Gráfico de commits

808 Commits

Autor SHA1 Mensaje Fecha
Maneesh Gupta e10fa70173 Merge pull request #621 from ROCm-Developer-Tools/disable_startup_loader
Disable startup loader by default and guard with env var
2018-08-10 10:18:25 +05:30
sunway513 7c467220a8 resolve a segfault bug when env var not set; remove startup_kernel_loader class 2018-08-09 16:40:26 +00:00
sunway513 7d776ae665 Add more check to ensure the startup loader only be enabled with the env var set to 1 2018-08-04 01:52:27 +00:00
sunway513 9af862d364 Add startup loader under HIP_STARTUP_LOADER env var, disable by default 2018-08-04 01:48:06 +00:00
Wen-Heng (Jack) Chung 1fe7f1be91 Revert "HIP program state re-initialization logic"
This reverts commit 04640992dc.
2018-08-03 17:03:04 -05:00
Wen-Heng (Jack) Chung f6178c2159 Revert "Improve performance of re-initialization logic"
This reverts commit b883ea759d.
2018-08-03 17:02:58 -05:00
Wen-Heng (Jack) Chung 329f3b7a5e Revert "Keep the map which tracks GPU kernel symbols to grow monotonically"
This reverts commit 8f521edff1.
2018-08-03 17:02:50 -05:00
Sarunya Pumma 84aadb9274 Remove device mapping from shareWithAll memory
When shareWithAll memory (e.g., host memory) is allocated, set appId
in hc::AmPointerInfo to -1 to indicate that this memory is not mapped
to any device.  Peer checking in ihipStream_t::canSeeMemory is not
necessary if memory is shared with all devices.  Thus, it is skipped.

Note that earlier host memory is always mapped to device 0 and HIP
always performs peer checking for all kinds of hipMemcpy.  Since the
peer checking process requires context locking, hipMemcpy from/to host
memory always grabs device 0's context lock.  Therefore, if there is
another thread holding the context lock of device 0 (e.g.,
hipDeviceSynchronize on device 0), hipMemcpy will have to wait for the
lock until it can actually perform memcpy.  This can significantly
deteriorate execution performance.

Signed-off-by: Sarunya Pumma <sarunya.pumma@amd.com>
2018-07-28 23:15:16 -07:00
Rahul Garg f17c897751 Null check before setting offset 2018-07-24 12:25:40 +05:30
Rahul Garg 0ec64e8b24 Set offset in hipGetTextureAlignmentOffset 2018-07-24 10:11:26 +05:30
Alex Voicu 633ce36ea7 It is unclear what I was thinking when authoring the original code... 2018-07-17 14:04:57 +01:00
Maneesh Gupta 1fc3ef3cd4 Merge branch 'master' into move-memcpy 2018-07-17 10:51:42 +05:30
Maneesh Gupta 7d8c1ae761 Merge pull request #515 from ROCm-Developer-Tools/hipclang-add-amdgcn-funcs
Add hipclang amdgcn functions
2018-07-17 09:25:09 +05:30
Maneesh Gupta 4702a6c86e Merge pull request #562 from ROCm-Developer-Tools/fix-build-failure
Fix build failure in code_object_bundle.cpp
2018-07-12 07:49:41 +05:30
Maneesh Gupta d63db71b61 Merge pull request #546 from gargrahul/fix_bindtex_offset_null_check
Fixed offset null check in bind texture functions
2018-07-11 12:52:31 +05:30
Maneesh Gupta 404bd43a0e Merge pull request #545 from ROCm-Developer-Tools/revert-521-temp_fixmemcpy2dasync_trsmissue
Revert "Use memcpy kernel for all pinned memory cases in hipMemcpy2DAsync"
2018-07-11 12:52:09 +05:30
Yaxun (Sam) Liu 903dfa94eb Move __hip_hc_memcpy and __hip_hc_memset from device_utils.cpp to device_functions.h as inline functions 2018-07-10 18:12:41 -04:00
Yaxun (Sam) Liu e6d155bcd5 Fix build failure in code_object_bundle.cpp 2018-07-10 16:49:59 -04:00
Aaron Enye Shi d39508b4fd Implement hip_ldg Functions into HIP header
Move all the function definitions for hip_ldg.cpp into hip_ldg.h header and enable for HIP clang path.
2018-07-05 20:38:46 +00:00
Aaron Enye Shi b362c53475 Implement min/max functions in HIP header
Remove using hc::precise_math min and max. Instead we can use ocml directly for device and std:: for host.
2018-07-05 20:15:41 +00:00
Aaron Enye Shi 96ab7c7b25 Implement Memory Fence Functions in header
Enabled __llvm_fence_* functions for seq_cst.
2018-07-04 23:35:24 +00:00
Aaron Enye Shi f8109c5b06 Merge branch 'master' into hipclang-add-amdgcn-funcs 2018-07-04 17:36:08 +00:00
Maneesh Gupta d372d0eaad Update hip_hcc_internal.h
Adding missing include for hip_hcc_internal in order to build with HCC
2018-07-04 09:33:51 +05:30
Rahul Garg 77cbd4476d Fixed offset null check in bind texture functions 2018-07-03 08:54:17 +05:30
Rahul Garg f554e48db3 Revert "Use memcpy kernel for all pinned memory cases in hipMemcpy2DAsync" 2018-07-02 14:32:11 +05:30
Aaron Enye Shi e44eaa1a1e Implement __shfl_* funcs into HIP headers 2018-06-26 18:32:11 +00:00
Aaron Enye Shi 9a295a732d Implement __ballot, __any, __all into HIP headers 2018-06-20 17:39:39 +00:00
Aaron Enye Shi 175c87f2bf Implement hip_hc.ll into HIP headers
Move all __hip_hc_ir_* functions from hip_hc.ll into HIP header as inline asm. Remove hip_hc.ll and build dependencies from HIP.
2018-06-20 17:39:31 +00:00
Aaron Enye Shi ad5f1dcbf2 Implement device_functions.cpp into HIP headers
Move all Integer Intrinsics, device_functions.cpp definitions and HIP specific device functions into HIP headers. Implement the device functions using llvm_intrinsics and device-libs functions instead of calling hc::__* functions. Remove device_functions.cpp since everything is now defined in header.
2018-06-20 17:39:23 +00:00
Aaron Enye Shi f4399d57a3 Add hipclang amdgcn functions
These are moving from hipclang in device library to hip headers. These are required for the functionality of HIPclang project.
2018-06-20 17:38:37 +00:00
Maneesh Gupta d27991e1c8 Merge pull request #490 from ROCm-Developer-Tools/feature_decouple_atomics_from_hc
Switch the atomic implementation to use Clang  builtins.
2018-06-20 14:16:43 +05:30
Maneesh Gupta 8ff33a83b1 Merge pull request #457 from whchung/hip-reinit
HIP program state re-initialization logic
2018-06-20 09:37:27 +05:30
Wen-Heng (Jack) Chung 8f521edff1 Keep the map which tracks GPU kernel symbols to grow monotonically 2018-06-18 16:54:18 -05:00
Wen-Heng (Jack) Chung b883ea759d Improve performance of re-initialization logic
Keep track of shared libaries already discovered. Do not build HSA executables
for them.
2018-06-15 18:07:33 -05:00
Rahul Garg 007e2a4b5f TEMP- fix memcpy2dAsync for trsm issue 2018-06-15 16:08:29 +05:30
Wen-Heng (Jack) Chung 04640992dc HIP program state re-initialization logic
This commit is to support kernels dynamically loaded thru means such as
dlopen() after HIP runtime initializes.
2018-06-14 15:46:49 +00:00
Rahul Garg 2ae3be9773 Fix stream resolution in memcpy2dasync 2018-06-14 11:58:56 +05:30
Rahul Garg 68554e155b Fix retrieved locked ptr offset 2018-06-13 23:10:05 +05:30
Maneesh Gupta cb642f14ab Merge pull request #482 from ROCm-Developer-Tools/feature_clean_up_hip_math
Switch to using ROCDL directly, as opposed to via HC. Add missing bits.
2018-06-06 16:07:22 +05:30
Maneesh Gupta 53037472ff Merge pull request #497 from gargrahul/fix_memcpy3d_fastpath
Fix hipMemcpy3D for fast path
2018-06-06 14:44:02 +05:30
Maneesh Gupta 28c5b15d88 Merge pull request #492 from gargrahul/fix_depth_3d_alloc
Fix depth value for 3D allocations
2018-06-06 14:41:23 +05:30
Maneesh Gupta f7c49dde38 Merge pull request #491 from scchan/fix_wait
callback handling: don't need to wait for the thread to become ready
2018-06-06 14:38:25 +05:30
Rahul Garg 163d4a5b03 Fix hipMemcpy3D for fast path 2018-06-05 18:54:33 +05:30
Siu Chi Chan 0d719c514f remove the _ready flag in ihipStreamCallback_t and the mutex that protects it. 2018-06-04 17:29:04 -04:00
Rahul Garg fa6ce7a724 Fix depth value for 3D allocations 2018-06-04 18:00:22 +05:30
Siu Chi Chan e21e6ed3a0 callback handler: don't need to wait for the thread to become ready 2018-06-02 17:55:37 -04:00
Alex Voicu 513ba4eb8a Switch the atomic implementation to use Clang builtins. 2018-06-02 12:27:17 +01:00
Alex Voicu 68a0dd826d Remove vestigial implementations. 2018-06-02 11:37:08 +01:00
Rahul Garg 94f086e9cd Add integrated device property 2018-06-02 13:11:16 +05:30
Alex Voicu f2d7f112ab Re-sync with upstream. 2018-06-01 15:49:05 +01:00