SWDEV-140733 - OpenCL Runtime Support for Raven BU in ROCm
- add device info entry for Raven
- modified Makefile.library to use Raven's bitcode library
Affected files ...
... //depot/stg/opencl/drivers/opencl/library/build/Makefile.library#61 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocdefs.hpp#13 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocdevice.cpp#78 edit
SWDEV-119491 - Add support for cl_amd_assembly_program extension - Enabling Extension
This is the last part of the following four requirements:
(1) OpenCL API / Runtime (CL1487653), (2) ROCm Runtime - compiler invocation (CL1487815), (3) ROCm Driver (CL1488115), (4) Enabling Extension
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocsettings.cpp#29 edit
SWDEV-136633 - Remove correlation handle.
Not used by debugger or profiler, dead code.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocvirtual.cpp#47 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocvirtual.hpp#15 edit
SWDEV-137374 - Collecting counters from some TCC, TCP and TA block instances causes kernel to hang
- fixed by using the new AQLProfile feature to obtain precise size for command/data buffers
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/roccounters.cpp#2 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocvirtual.cpp#46 edit
SWDEV-137599 - [OCL/LC] OCLLiquidFlash test on Vega10 Linux causing system to hang
- Don't report the LiquidFlash extension by default. Runtime will detect amdgpu-pro interfaces later and report the extension if available.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocsettings.cpp#28 edit
SWDEV-135791 - Set kernel max work group size from metadata
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palkernel.cpp#39 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rockernel.cpp#29 edit
SWDEV-102733 - More cmake and other updates to fix open source build
Affected files ...
... //depot/stg/opencl/drivers/opencl/api/opencl/amdocl/amdocl.map#5 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/CMakeLists.txt#10 edit
SWDEV-79445 - Fix a crash on rocm systems
- Allow the persistent direct map only if persistent_host_ptr_ is available. On Rocm setup without amdgpu-pro OCL will use system memory instead of persistent
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocmemory.hpp#11 edit
SWDEV-79445 - Add logic to handle persistent memory separately from the host memory path
- Some of the optimizations applied to the host memory can't be used for persistent
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocblit.cpp#20 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocmemory.cpp#30 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocmemory.hpp#10 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocvirtual.cpp#45 edit
SWDEV-102726 - [OCL-LC-ROCm] Open source OpenCL Runtime
- Initialize spirVersions_ even if we do not report the extension.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocdevice.cpp#72 edit
SWDEV-135933 - Use the same device driver version format for all device backends
- Report "####.# (HSA#.#,{HSAIL|LC})"
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocdevice.cpp#71 edit
SWDEV-132888 - OCL kernel execution time is long at the first run on Linux, Vega, HSAIL (ProRender unit test)
Don't finalize ISA binaries if recompilation is not requested.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocprogram.cpp#74 edit
SWDEV-133886 - [Linux-Pro][VEGA ][Nuke]OpenCL kernel compilation failed" error is observed with Nuke on Vega10
- Port CL#1116855 to OCL/ROCm.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocprogram.cpp#73 edit
SWDEV-120036 - Supporting the cl_amd_device_attribute_query on the ROC device
- divided the query of HSA_AMD_AGENT_INFO_MEMORY_WIDTH by 32 to obtained the globale memory channels as done in ORCA and PAL
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocdevice.cpp#69 edit
SWDEV-134554 - OCLPerfConcurrency is failed on Vega10 Lnx Pro after CL#1465654
- fixed the issue by limit the number of asyn queues to 8, which matches the number of pipes.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocdefs.hpp#12 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocdevice.cpp#68 edit
SWDEV-126904 - rocm Pipe: fill device info for Pipe, and initialize Pipe memory object according to clk_pipe_t structure
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocdevice.cpp#67 edit
SWDEV-120036 - Supporting the cl_amd_device_attribute_query on the ROC device
- resubmit the codes with the addition of global free memory query support
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocdevice.cpp#66 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocdevice.hpp#24 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocmemory.cpp#26 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocsettings.cpp#27 edit
SWDEV-134228 - Remove dead code.
hsa_memory_assign_agent is not needed with pool memory APIs and has been superceded by hsa_amd_agents_allow_access.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocdevice.cpp#65 edit
SWDEV-118564 - [OCL-LC-ROCm] Remove options, which have already been moved to AMDGPUToolChain by https://reviews.llvm.org/rL312524
In order to have similar set of optipons for online and offline compilation a mechanism of setting default options in AMDGPUToolChain was implemented by https://reviews.llvm.org/rL312524. That commit also sets two default options in AMDGPUToolChain: -m64 and -O3 (the latter only set if there is no -O{N} option in the args). The commit has already reached amd-common.
The current change relates to LC only and removes setting of -m64 from compileImpl_LC() as it is set later in TranslateArgs(); for online -O{N} is set as before by RT and stays unchanged in AMDGPUToolChain; for offline it is set to -O3 by TranslateArgs() if no -O{N} is passed through args.
Also remove comments regarding "-x cl" as it is now correctly set in OpenCL driver.
Review: http://ocltc.amd.com/reviews/r/13454/
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palcompiler.cpp#18 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/roccompiler.cpp#36 edit
SWDEV-120036 - Supporting the cl_amd_device_attribute_query on the ROC device - Back out changelist 1459984
- not all device attributes are supported, will re-submit the changes when every attribute is supported.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocdevice.cpp#64 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocsettings.cpp#26 edit
SWDEV-111439 - Add query for preferred constant size
- fixed a mistake of using 64KiB for the size, which should be 16KiB.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpudevice.cpp#576 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/paldevice.cpp#62 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocdevice.cpp#63 edit
SWDEV-130808 - set the local sizes to preferredWorkGroupSize_ when clEnqueueNDRange is not given and the kernel does not have required workgroup sizes.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpukernel.cpp#320 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpuvirtual.cpp#411 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palkernel.cpp#36 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palvirtual.cpp#56 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rockernel.cpp#26 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocvirtual.cpp#43 edit
SWDEV-130808 - Add support of two new queries: CL_DEVICE_PREFERRED_WORK_GROUP_SIZE_AMD, CL_DEVICE_MAX_WORK_GROUP_SIZE_AMD.
- Restore the original behavior when setting GPU_MAX_WORKGROUP_SIZE.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpusettings.cpp#356 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palsettings.cpp#33 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocsettings.cpp#24 edit
... //depot/stg/opencl/drivers/opencl/runtime/utils/flags.hpp#279 edit
SWDEV-124331 - Follow HSA loader spec.
Extend lifetime of loaded ELF and code reader to the lifetime of the loaded executable.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocprogram.cpp#69 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocprogram.hpp#27 edit