SWDEV-196326 - [hipclang-vdi-rocm]: [FBA-80]: Runtime error when all GPUs are hidden by ROCR_VISIBLE_DEVICES
- Adjusted hipGetDeviceCount to return "hipErrorNoDevice".
- This was done to match the same behaviour as HIP-HCC, and API spec for when no devices are found. Rather then return "count = 0" as it did.
ReviewBoardURL = http://ocltc.amd.com/reviews/r/17789/diff/
Affected files ...
... //depot/stg/opencl/drivers/opencl/api/hip/hip_device.cpp#22 edit
SWDEV-180872 - Runtime support changes for Cooperative Group Features
- Initial implementation of the core functionality. Disabled by default. Use GPU_ENABLE_COOP_GROUPS=1 to enable the feature.
- Runtime uses device queue for cooperative executions with a synchronization on the launched queue.
- The current implementation is pure runtime change and it can work if only one app uses this feature. No ROCr/KFD support was added or tested
- Only inline assembler was tested
Affected files ...
... //depot/stg/opencl/drivers/opencl/api/hip/hip_device.cpp#20 edit
... //depot/stg/opencl/drivers/opencl/api/hip/hip_device_runtime.cpp#15 edit
... //depot/stg/opencl/drivers/opencl/api/hip/hip_hcc.def.in#15 edit
... //depot/stg/opencl/drivers/opencl/api/hip/hip_hcc.map.in#17 edit
... //depot/stg/opencl/drivers/opencl/api/hip/hip_module.cpp#28 edit
... //depot/stg/opencl/drivers/opencl/api/hip/hip_platform.cpp#32 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/device.hpp#338 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpudevice.cpp#606 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpudevice.hpp#171 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palblit.cpp#31 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palblit.hpp#9 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/paldevice.cpp#142 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/paldevice.hpp#39 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palschedcl.cpp#6 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palvirtual.cpp#135 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palvirtual.hpp#61 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocblit.cpp#32 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocblit.hpp#12 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocdevice.cpp#127 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocdevice.hpp#37 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocschedcl.cpp#3 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocvirtual.cpp#75 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocvirtual.hpp#23 edit
... //depot/stg/opencl/drivers/opencl/runtime/platform/command.cpp#94 edit
... //depot/stg/opencl/drivers/opencl/runtime/platform/command.hpp#92 edit
... //depot/stg/opencl/drivers/opencl/runtime/utils/flags.hpp#311 edit
SWDEV-187020 - Basic "Hello World" Tensorflow program fails to execute on HIP/VDI/PAL/LINUX
Make sure that the size of `dest` is big enough to hoid `src` including trailing zero byte
Affected files ...
... //depot/stg/opencl/drivers/opencl/api/hip/hip_device.cpp#19 edit
SWDEV-187020 - Basic "Hello World" Tensorflow program fails to execute on HIP/VDI/PAL/LINUX
the API hiDeviceGetName() should pass the length of device name as argument to strncpy() instead
of total (dest) memory size which is being passed to it by its caller. Also, bit of a code clean-up.
Affected files ...
... //depot/stg/opencl/drivers/opencl/api/hip/hip_device.cpp#18 edit
SWDEV-145570 - [HIP] - Add missing HIP APIs and fill sym table references. The HIP tests can now build if we do a symlink to libhip_hcc.so that we build with VDI in the install folder in github HIP.
ReviewBoardURL = http://ocltc.amd.com/reviews/r/14619/diff/
Affected files ...
... //depot/stg/opencl/drivers/opencl/api/hip/hip_device.cpp#10 edit
... //depot/stg/opencl/drivers/opencl/api/hip/hip_hcc.def.in#3 edit
... //depot/stg/opencl/drivers/opencl/api/hip/hip_hcc.map.in#3 edit
... //depot/stg/opencl/drivers/opencl/api/hip/hip_internal.hpp#7 edit
... //depot/stg/opencl/drivers/opencl/api/hip/hip_platform.cpp#5 edit
... //depot/stg/opencl/drivers/opencl/api/hip/hip_profile.cpp#1 add
... //depot/stg/opencl/drivers/opencl/api/hip/hip_texture.cpp#3 edit
SWDEV-145570 - Contexts
Create one amd::Context per device
g_context is now thread's current context
HIP doesn't want more than one context per device so we always use the primary one
Affected files ...
... //depot/stg/opencl/drivers/opencl/api/hip/hip_context.cpp#3 edit
... //depot/stg/opencl/drivers/opencl/api/hip/hip_device.cpp#7 edit
... //depot/stg/opencl/drivers/opencl/api/hip/hip_internal.hpp#4 edit