SWDEV-2 - Change OpenCL version number from 3028 to 3029.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/utils/versions.hpp#2776 edit
SWDEV-145570 - [HIP] Fix occupancy API prototype.
- They need to be C API, i.e. extern "C".
- Follow the current API and use `uint32_t` instead of `int`.
+ TODO: We need to revert them back once that APIs are changed to be
compatible with CUDA.
Affected files ...
... //depot/stg/opencl/drivers/opencl/api/hip/hip_platform.cpp#46 edit
- Fix 2 runtime API prototypes
`hipOccupancyMaxActiveBlocksPerMultiprocessor` and
`hipOccupancyMaxActiveBlocksPerMultiprocessorWithFlags`
- Add missing function templates of them in hip-clang.
SWDEV-208424 - ROCr language runtime should not free code object until executable destroy
- Reshuffle the code to make sure HSA runtime can keep the pointer to the code object
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/devprogram.cpp#67 edit
The lifetime of the buffer given to
hsa_code_object_reader_create_from_memory must exceed that of the
code object reader. We need to create a copy of the code object
binary memory (file) that is kept allocated until the code object
reader is destroyed.
SWDEV-2 - Change OpenCL version number from 3027 to 3028.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/utils/versions.hpp#2775 edit
SWDEV-2 - Change OpenCL version number from 3026 to 3027.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/utils/versions.hpp#2774 edit
SWDEV-79445 - OCL generic changes and code clean-up
- Fix memory leaks in COMGR path. Don't create binaryData, since it will be overwritten with action_data_get_data() call.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/devprogram.cpp#65 edit
SWDEV-204995 - Linux Pro: Houdini18 Application hang is seen with pyro sample on OpenCL selection.
The new Houdini application has around 286.6K byte TLS. In Linux, the TLS resides in thread stack. TLS is allocated and initialized during pthread_create.
If command queue thread stack size is only 256k byte, pthread_create function failed with return value EINVAL.
The above information is verified by this test:
I printed out the address of a __thread variable. Then I printed out an address of a local variable. I confirmed both variables are in the same memory segment according to /proc/id/maps. This memory segment is same size of CQ_THREAD_STACK_SIZE and changed with this environment variable.
The __thread variable is 286.6K byte away from the bottom of the stack but still inside the stack.
I have added printf to verify function guessTlsSize can guess tlsSize correctly. And pthread_create succeeded in first invocation with tls size adjustment.
Tests:
1. Test houdini - PASS
2. http://ocltc.amd.com:8111/viewModification.html?modId=128021&personal=true&tab=vcsModificationBuilds
ReviewBoard: http://ocltc.amd.com/reviews/r/18175
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/os/os_posix.cpp#47 edit
Reverts changes made in #1399. This is a RT api test. For testing hipMemAllocPitch , a new test should be written and that should use correct memset API.
SWDEV-2 - Change OpenCL version number from 3025 to 3026.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/utils/versions.hpp#2773 edit
SWDEV-208424 - ROCr language runtime should not free code object until executable destroy
- Keep the code object reader alive until the program destruction. Update HSAIL path only, since LC path already handles it correctly.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocprogram.cpp#107 edit
SWDEV-197289 - VDI tracing API integration in rocTracer
- Change the names of the functions according to the new interface
Affected files ...
... //depot/stg/opencl/drivers/opencl/api/hip/hip_activity.cpp#2 edit
... //depot/stg/opencl/drivers/opencl/api/hip/hip_hcc.def.in#34 edit
... //depot/stg/opencl/drivers/opencl/api/hip/hip_hcc.map.in#32 edit
SWDEV-207662 - [EURI][OPENCL][Forum 244452]: Multiple printf statements inside kernel producing strange output on Vega on Windows
- Correct the printf arguments parsing logic. Don't use local PrintfInfo info, because it can contain some stale data after the first iteration
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/devkernel.cpp#27 edit