SWDEV-107271 - For APU system, when allocating USWC with enough USWC reported and the allocation fails, we should return false instead of looping forever.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palmemory.cpp#12 edit
SWDEV-99150 - Convert PerfCounter indexing scheme from ORCA to PAL.
PAL is using a different PerfCounter indexing scheme, so need to make the conversion to make CodeXL behave the same.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palcounters.cpp#9 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palcounters.hpp#8 edit
SWDEV-112401 - [OCLonROCm vs LinuxPro][Fiji][Perf] Around ~ 70% performance drop observed with OCL SDK - BlackScholes test
- Switch persistent emulation to device memory instead of system memory, since ROCr doesn't support visible heap without large bar. It's a potential tradeoff of persistent usage in the applications between an upload buffer or directly in a kernel.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocmemory.cpp#11 edit
SWDEV-99150 - Update ORCA PerfCounter enum conversion to PAL.
PAL changes its PerfCounter enum in palPerfExperiment.h since version 236.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palcounters.cpp#8 edit
SWDEV-107075 - [OCL][VG10] Conformance RQ Mipmaps tests are failing. Adding the below changes to fix the failures
- For 1Darray images the Height should be 1 and we should use the correct value for "numSlices" in copyRegion
- For 2Darray images the Depth should be 1 and we should use the correct value for "numSlices" in copyRegion
- The right Height should be used when gpuMemoryDepthPitch is calculated
Also, PAL was not obeying the "numSlices" parameter for SDMA-based memory <--> image or image <--> image copies and this issue is fixed in CL#1369626.
The current changes in OCL runtime will be submitted into stg once the above CL from PAL gets promoted into OCL stg.
ReviewBoardURL = http://ocltc.amd.com/reviews/r/12260/
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palresource.cpp#24 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palsettings.cpp#17 edit
SWDEV-103424 - [ROCm CQE][OCL] OCLRuntime - OCLCreateBuffer tests are failing. The failure is due to AQL cannot support global size > 32bit range. Adding dispatch split support for ROCm, similar to that of GSL (CL#1159349), to resolve the issue.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rockernel.hpp#13 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocprogram.cpp#56 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocvirtual.cpp#31 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocvirtual.hpp#8 edit
... //depot/stg/opencl/drivers/opencl/tests/ocltst/module/runtime/OCLCreateBuffer.cpp#6 edit
SWDEV-112661 - [ROCm CQE][OCLonLC][QR][G] 80 failures observed with Images(Samplerless and Samplerless pitch) tests
- Make sure the pitch for image buffer is properly aligned to the reported device info
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocmemory.cpp#10 edit
SWDEV-112171 - [ROCm CQE][OCLonLC][QR][G] System hangs/Failures observed with few WF conf tests, due to CL#1364923
- reenable HSA copy in ROCr, since OCL copy doesn't really fix the hang issue in integer_ops, but just delays it.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocvirtual.cpp#30 edit
SWDEV-107271 - Fix crash that happens when Resource::create() fails and "owner" gets cleared. This is only triggered by Conformance test Basic progvar_prog_scope_misc on Raven with 16GB memory (8GB is fine), but should be a general bug.
http://ocltc.amd.com/reviews/r/12253
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palmemory.cpp#11 edit
SWDEV-112352 - [ROCm CQE][OCLonLC][QR][G] Aborted/Segmentation fault is observed with "sub_buffers_read_write_dual_devices" of Buffers, due to CL#1364923
- Keep system memory for multiple devices in case of possible initialization on the second device
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocdevice.cpp#41 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocmemory.cpp#9 edit
SWDEV-112171 - [ROCm CQE][OCLonLC][QR][G] System hangs/Failures observed with few WF conf tests, due to CL#1364923
- Disable ROCr copy buffer and use runtime kernel to avoid HW hangs in integer_ops.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/blit.hpp#3 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocblit.cpp#12 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocvirtual.cpp#29 edit
SWDEV-112171 - [ROCm CQE][OCLonLC][QR][G] System hangs/Failures observed with few WF conf tests, due to CL#1364923
- Back out changelist 1367810. A hang was delayed, but still occured much later in the test.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocblit.cpp#11 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocdevice.cpp#40 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocdevice.hpp#16 edit
SWDEV-105835 - ROCm OpenCL: add -amdgpu-internalize-symbols to BE
The option -amdgpu-internalize-symbols allows to drop unused symbols from program,
functions and global variables. This saves compile time and object size, a lot in
case of a big program.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palprogram.cpp#33 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocprogram.cpp#55 edit
SWDEV-112171 - [ROCm CQE][OCLonLC][QR][G] System hangs/Failures observed with few WF conf tests, due to CL#1364923
- Make HSA copy call lock protected, due to a possible race condition and HW hangs in integer_ops long_math test
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocblit.cpp#10 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocdevice.cpp#39 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocdevice.hpp#15 edit
SWDEV-112171 - [ROCm CQE][OCLonLC][QR][G] System hangs/Failures observed with few WF conf tests, due to CL#1364923
- Add missing row and slice pitches to fix "clReadWriteImage Pitch" and "clFillImage pitch" tests
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocblit.cpp#9 edit
SWDEV-112273 - [ROCm CQE][OCLonLC][QR][G] 2 of 9 tests failed with mem_host_flags due to CL#1366459
- Keep system memory for images with UHP allocations
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocdevice.cpp#38 edit
SWDEV-112016 - [ROCm CQE][OCLonLC][QR][G] Seg fault observed with "sub_buffers_read_write" of Buffers, due to CL#1364923
- Take the host pointer for CPU access in bufferfill.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocblit.cpp#8 edit
SWDEV-94644 - Switch back to bare numbers in pal when processing note entries. In order to use constants and enums from the llvm's header, we need to clean up similar loader's header (they conflict). Ideally we should move torwards not having headers with similar definitions.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palprogram.cpp#32 edit
SWDEV-94644 - Make sure we are processing metadata note entry with supported n_type. Update build log and fail for not supported metadata n_type. Use constants defined in AMDGPUPTNote.h
This change is needed for https://reviews.llvm.org/D29115
This change is required for CL 1366203
ReviewBoardURL: http://ocltc.amd.com/reviews/r/12223/
Testing: lightning conformance tests locally
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palprogram.cpp#31 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocprogram.cpp#54 edit
SWDEV-111478 - [Vega] Clinfo doesn't report the CPU as a CL device.
amdocl12cl64.dll is not loaded in Windows 10 (RS1) because the driverstore path wasn't searched to load for this module. Added the path to fix this issue.
ReviewBoardURL = http://ocltc.amd.com/reviews/r/12211/
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpudevice.cpp#563 edit
... //depot/stg/opencl/drivers/opencl/runtime/os/os.cpp#6 edit
SWDEV-107075 - [OCL][VG10] Conformance RQ Mipmaps tests are failing. Adding a temporary workaround for Vega10 to disable sDMA transfers for MemToImage and ImageToMem for 1Darray image format for now and use Kernles instead until the failures can be root-caused and fixed.
GPU_DISABLE_SDMA_IMG_MEM_IMG environment variable was also added to quickly enable back the sDMA for testing and continuing the current failure investigation.
ReviewBoardURL = http://ocltc.amd.com/reviews/r/12194/
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palresource.cpp#22 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palsettings.cpp#14 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palsettings.hpp#8 edit
... //depot/stg/opencl/drivers/opencl/runtime/utils/flags.hpp#265 edit
SWDEV-95919 - Fix num-of-waves PerfCounter is 0 on Baffin.
Counters are clockgated on Fiji and above. Need to program the RLC_PERFMON_CLK_CNTL register thru IDeviceSetClockMode(), so that meaningful data is recorded. We leave kmd/pplib to keep track of the OCL process to restore the RLC_PERFMON_CLK_CNTL register when the OCL process is killed.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palvirtual.cpp#41 edit
SWDEV-107075 - [OCL][PAL] Making some changes for partialMemCopyTo function to move out the sDMA restrictions to out of the main if condition.
ReviewBoardURL = http://ocltc.amd.com/reviews/r/12159/
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palresource.cpp#21 edit
SWDEV-109652 - Pool multiple timestamps into a single allocation
Before submitting http://ocltc.amd.com/reviews/r/12044/, I am changing gsl::QueryObject::QueryCounter(gsCtx\* ctx, uint32 index) to gsl::QueryObject::QueryCounterIndexed(gsCtx\* ctx, uint32 id, uint32 index). Where the 'id' parameter is non-default.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gslbe/src/rt/EventQueue.cpp#7 edit