SWDEV-187169 - Hotel Lobby scene takes long time to compile
Patch authored by Valery Pykhtin.
Remove " -mllvm -amdgpu-early-inline-all", from the options passed
to the compiler; option interferes with function call support.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/devprogram.cpp#44 edit
SWDEV-162389 - OpenCL Support for COMgr
- direct the COMgr log to buildLog_ buffer
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/devprogram.cpp#43 edit
SWDEV-188631 - Allocating large buffers produce wrong kernel result on Windows
1. Set a limit for USWC allocations to 2GB on Windows.
2. Allocations larger than the specified limit will get placed into pinned memory instead.
ReviewBoardURL = http://ocltc.amd.com/reviews/r/17407/diff/
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/paldevice.cpp#138 edit
... //depot/stg/opencl/drivers/opencl/runtime/utils/flags.hpp#310 edit
SWDEV-145570 - Support loading fat binary generated through --genco by hipModuleLoad.
hip-clang --genco generates fat binary instead of code object. To support that
we need to extract code object from fat binary in hipModuleLoadData. This is
needed for hipRTC since multiple GPU archs may be passed.
Affected files ...
... //depot/stg/opencl/drivers/opencl/api/hip/hip_module.cpp#27 edit
... //depot/stg/opencl/drivers/opencl/api/hip/hip_platform.cpp#31 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/devprogram.cpp#42 edit
... //depot/stg/opencl/drivers/opencl/runtime/utils/flags.hpp#308 edit
SWDEV-189990, SWDEV-190337 - Update OpenCL/PAL gfx10 counter blocks again to match GPUPerfAPI.
SWDEV-190337:
- Update the GFX10 block list (gfx10BlockIsPal) to match GPUPerfAPI, which expects the OpenCL block lists to match OpenGL (UGL). Note: The list now matches the expectations of GPUPerfAPI. For TA/TD/TCP, nearly all GFX10 ASICs only require 10 or 12 instances (Arden would require 14, Mero would require 8, but not sure if those are supported by OCL), but we are using 16 instances to match UGL.
- Make sure the blockIdToIndexSelect array contains all the blocks supported by PAL (add a static_assert to ensure this)
- Refactor the PCIndexSelect enum. This enum is used to determine how to sum up counters across multiple block instances. The following types are now supported:
Instance -- no autosumming; instances have a one-to-one correlation with PAL
ShaderEngine -- the block is instanced per shader engine, and OpenCL will autosum counters across all PAL instances, providing a single value for all of PAL's instances
ShaderArray -- the block is instanced per shader array, and OpenCL will autosum counters across shader arrays, providing a single value for each instance within a shader array. For example, if a block has four instances per shader array, PAL would expose 16 instances total on Navi10 (2 SEs, 2 SAs per SE), but OpenCL will expose four instances
ComputeUnit -- the block is instanced per compute unit, and OpenCL will autosum counters across shader arrays, providing a single value for each compute-unit-per-shader-array. For example, if a block is instanced per compute unit, then PAL would expose 40 instances on a 40CU Navi10. OpenCL would support 10 instances (2 CUs-per-WGP, 5 WGPs-per-SA), autosummed across shader arrays.
SWDEV-189990:
- Revert GFX9 and GFX10 tests back to using the MCVML2 counter it was using previously (prior to CL 1766829). This is counter index 2, which the test calls "BigK bank 0 hits". In the aforementioned change list, I updated the counter index from 2 to 14, since index 14 is the actual counter that represents "BigK bank 0 hits". Counter index 2 is the number of hits, not "bigK" hits. This previous change caused a test regression reported in SWDEV-189990. By reverting the code to use counter 2, the expected value in the test should be correct. Perhaps a better update would be to change the description in the source from "BigK bank 0 hits" to "bank 0 hits", but for now, I'm just going to go back to what the test was doing before.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palcounters.cpp#21 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palcounters.hpp#11 edit
... //depot/stg/opencl/drivers/opencl/tests/ocltst/module/runtime/OCLPerfCounters.cpp#47 edit
SWDEV-189453 - [Navi10][OpenCl][x32][Converter] Process hang
- Use the argument size from the caller. With LC path and 32 bit the both sizes are different and runtime has to use the caller's size, which matches the host bitness, because the optimized path updates 32 bit values only.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palblit.cpp#30 edit
SWDEV-189541 - [HIP] Make sure maxSvmSize is power of two.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/paldevice.cpp#136 edit
SWDEV-189140 - Add P2P support in PAL path
- PAL requires P2P resource open on the usage device. Add the new interface to open the resource
- Add a hidden P2P device object creation into amd::Memory. It can be activated with OCL context that has a single device.
Affected files ...
... //depot/stg/opencl/drivers/opencl/api/opencl/amdocl/cl_p2p_amd.cpp#2 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/device.hpp#337 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/paldevice.cpp#134 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palmemory.cpp#25 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palresource.cpp#74 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palresource.hpp#28 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palsettings.cpp#80 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palsettings.hpp#23 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palvirtual.cpp#133 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocdevice.cpp#126 edit
... //depot/stg/opencl/drivers/opencl/runtime/platform/command.cpp#93 edit
... //depot/stg/opencl/drivers/opencl/runtime/platform/memory.cpp#136 edit
... //depot/stg/opencl/drivers/opencl/runtime/platform/memory.hpp#109 edit
... //depot/stg/opencl/drivers/opencl/runtime/utils/flags.hpp#306 edit
SWDEV-188605 - [CQE OCL][QR][mGPU][Vega][DTB-Blocker][Windows][RS5] Observed Failure of OCLP2PBuffer sub test of ocltst_runtime both 64 &32 bit due to faultyCL 1775995
- Count offline GPU devices during PAL device detection
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/paldevice.cpp#132 edit
SWDEV-187956 - [CQE OCL][NAVI 10][WIN][LNX] Assertion failure observed with Subtests of OpenMM on PAL/LC path
- Correct the number of SIMDs and SIMD width for Navi10.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/paldefs.hpp#51 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocdefs.hpp#24 edit
... //depot/stg/opencl/drivers/opencl/tests/ocltst/module/runtime/OCLDeviceQueries.cpp#54 edit
SWDEV-181817 - remove HostMemDirectAccess flag for non-tiled 3D image, so that unimplemented pal::Resouce::mapLayers() will not be hit by Fill Image path.
ocltc.amd.com/reviews/r/17238/
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palmemory.cpp#23 edit
SWDEV-185753 - [CQE OCL][QR][DTB-Blocker][Vega][Navi][PCO][Windows] observed Failure with Multiple applications on all asics (Navi, Vega, PCO, RV2 ) due to Faulty CL 1766106
- Keep SVM allocation of code segment for HIP only.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palprogram.cpp#92 edit
SWDEV-187076 - Fix parameter initialization on COMPGR path.
- Once 'Args' or '.args' cannot be found, it should be regarded as no
argument is associated with that kernel instead of an error.
RB: http://ocltc.amd.com/reviews/r/17177/
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/devkernel.cpp#22 edit
SWDEV-165259 - Update OpenCL runtime to support MsgPack metadata
- Fixed a typo in the value type field of kernel metadata for V3
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/devkernel.hpp#15 edit
SWDEV-165259 - Update OpenCL runtime to support MsgPack metadata
- Fixed argument type qualifier bug. Data are represented as "0"/"1" in V3, not "false"/"true" as in V2
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/devkernel.cpp#21 edit
SWDEV-182204 - [CQE OCL][QR][DTB-Blocker][RV2][PCO][Windows][RS] Soft hang is observed with multiple OCL applications on PCO, RV | Faulty CL#1747482
Ocltst test SW hung at sub test OCLCreateBuffer due to the failure of submit command buffer, because of not enough OS memory allocation.
OCL adds back up GART heap for memory allocation.
http://ocltc.amd.com/reviews/r/17143/
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palresource.cpp#72 edit
SWDEV-165259 - Update OpenCL runtime to support MsgPack metadata
- Fixed the missing support of Printf for CO v3
- Added back the flag to disable CO v3 for the non-COMGR environment
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/devkernel.cpp#20 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/devprogram.cpp#40 edit
SWDEV-145570 - Disable subwindow copy temporarily to see if TC random hangs go away
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocblit.cpp#30 edit
SWDEV-79445 - OCL generic changes and code clean-up
- More changes to make sure runtime and LC could be built separately
Affected files ...
... //depot/stg/opencl/drivers/opencl/Makefile#71 edit
... //depot/stg/opencl/drivers/opencl/compiler/Makefile#73 edit
... //depot/stg/opencl/drivers/opencl/library/build/Makefile.library#78 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/devprogram.cpp#38 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palprogram.cpp#88 edit
SWDEV-132899 - [OCL] set lcWavefrontSize64_ on ROCm for all ASICs except gfx10+ so that we Link wavefrontsize64 correctly
ReviewBoardURL = http://ocltc.amd.com/reviews/r/17081/
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocsettings.cpp#43 edit
SWDEV-183848 - Update OpenCL perfcounter blocks to match the block lists used by GPUPerfAPI (which is in turn used by RCP and CodeXL)
- The PAL block index for the PA_SC block was incorrect in all hw generations (in PAL, GpuBlock::SC has ordinal 4, not 3)
- In GFX9, the MC and SRBM blocks are not supported
- In GFX10, the following changes are made:
-- There are 8 CB instances per SE
-- There are 8 DB instances per SE
-- There are 2 PA_SU instances per SE
-- There are 4 PS_SC instances per SE
-- There are 4 RMI instances per SE
-- There are 2 GL1A instances per SE
-- There are 2 GL1C instances per SE
-- There are 8 GL1CG instances per SE
-- There are 4 global GL2A instances
-- There are 16 global GL2A instances
-- There are 4 global CHC instances
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palcounters.cpp#19 edit
SWDEV-132899 - [OCL][GFX10] add support for Navi10_A0 (gfx1010) (new entry from PAL for Navi10 A0 boards)
ReviewBoardURL = http://ocltc.amd.com/reviews/r/17022/
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/paldefs.hpp#50 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palsettings.cpp#74 edit
SWDEV-168145 - Add ECC target feature to OpenCL runtime
- hard coded SRAM ECC target feature for now since ROCr disable sram-ecc reporting via ISA until HCC is fixed
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocdevice.cpp#123 edit
SWDEV-183848 - Updating gfx10BlockIdPal based on the request from CodeXL
ReviewRequestURL = http://ocltc.amd.com/reviews/r/16992/
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palcounters.cpp#18 edit
SWDEV-132899 - [OCL][GFX10] add "wavefrontsize64" to the linkOptions if they had previously been added to the compile options
ReviewRequestURL = http://ocltc.amd.com/reviews/r/16966/
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/devprogram.cpp#35 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palsettings.cpp#71 edit
SWDEV-132899 - [OCL][GFX10] passing "force-wgp-mode" option to Finalizer to enable WGP mode by default on gfx10+
and allow GPU_ENABLE_WGP_MODE to control the WGP/CU mode for HSAIL/SC path as well.
- also for Ariel (Navi10Lite) the wave32 should be disabled in LC but allow GPU_ENABLE_WAVE32_MODE control it for testing if needed.
ReviewrequestURL = http://ocltc.amd.com/reviews/r/16926/
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/devprogram.cpp#34 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palsettings.cpp#70 edit
SWDEV-86035 - Fix asserts in PAL after latest integration
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palresource.cpp#71 edit