SWDEV-78299 - Back out changelist 1236441 since OCLCreateBuffer fails.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpudevice.cpp#541 edit
SWDEV-78299 - [Brahma] Setting max single allocation size by comparing cardMemAvailableBytes with cardExtMemAvailableBytes on Brahma.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpudevice.cpp#540 edit
SWDEV-2 - Change OpenCL version number from 2032 to 2033.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/utils/versions.hpp#1779 edit
SWDEV-2 - Change OpenCL version number from 2031 to 2032.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/utils/versions.hpp#1778 edit
SWDEV-68792 - [OpenCL][HWS/CWSR] Adding support for Hardware Scheduler and Compute Wave Save restore (CWSR) feature on ORCA
Adding a temporary w/a for a CP uCode bug in HWS mode. Due to this bug, CP uCode loops through a RUNLIST unless there is a submission on all queues in HWS mode. This causes some overhead and performance drop in PCMark8 on CZ in HWS mode. To work around this issue, it was suggested to submit a dummy packet during initialization on all available queues on HWS mode so that CP uCode can break the loop. This w/a should be removed once CP uCode provides a final fix for this issue.
ReviewBoardURL = http://ocltc.amd.com/reviews/r/9616/
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gslbe/src/rt/GSLDevice.cpp#160 edit
SWDEV-2 - Change OpenCL version number from 2030 to 2031.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/utils/versions.hpp#1777 edit
SWDEV-86836 - Enhance caching library class to prepare one-stage kernel caching by:
0. Moving cache storage setup into constructor
1. Controlling cache storage size
2. Explicit cache cleanup
a. -kcache-wipe is off by default; when turned on, the caching directory would be wiped off
b. Here it's just an option. The implementation (the call of wipeCacheFolders()) will be added in the compiler library
3. Enforcing cache miss (actual compilation enforcing and adding a new entry to the cache storage).
a. -kcache-enforce-miss is off by default; when turned on, the real compilation will be enforced
b. Here it's just an option. The implementation will be added in the compiler library
ReviewBoardURL = http://ocltc.amd.com/reviews/r/9726/
Affected files ...
... //depot/stg/opencl/drivers/opencl/compiler/lib/utils/OPTIONS.def#134 edit
... //depot/stg/opencl/drivers/opencl/compiler/tools/caching/cache.cpp#12 edit
... //depot/stg/opencl/drivers/opencl/compiler/tools/caching/cache.hpp#7 edit
SWDEV-2 - Change OpenCL version number from 2029 to 2030.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/utils/versions.hpp#1776 edit
SWDEV-2 - Change OpenCL version number from 2028 to 2029.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/utils/versions.hpp#1775 edit
SWDEV-2 - Change OpenCL version number from 2027 to 2028.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/utils/versions.hpp#1774 edit
SWDEV-86885 - [CQE OCL][2.0][QR][CFX] Few SDK 64 and 32 bit Samples resulting in Soft/hard hangs with faulty cl: 1233743
Unsubmit CL1233743 because of problems with CFX.
I have not been able to figure out how Cl1233743 would cause a problem. It sets a flag, to disable new code... I would expect the new code to be the problem, not the disable.
So, in case this unsubmit does not elminate the problem, CL1233686 is shelved, to use #ifndef CAL_SUPPORT around the new code in CL1226184.
CL1233743 was submitted for:
SWDEV-86253 - [QR] 6 to 7% performance drop is observed in BasemarkCL test
CL1226184 adds serialization to LHIO, because pxproxy accesses global state, without locks, leading to crash, etc.
To fix OpenCL perf regressions, allow unserialized access to pxproxy. It may be that OpenCL design leads away from racy behavior, so it may be safe. This was checked in to gather information. What software gets perf drops? Does any software get fixed?
The dangerous functions are CreateDevice, CreateContext, because the handles from the OS are saved in global caches, and if those global caches are modified in one thread, while other threads are looking-up from the caches - that is a problem.
CL1226184 was submitted for:
SWDEV-80442 - [QR][Adobe Premier Pro CS6] TDR/App Crash observed while resizing the video window within workspace
TC: http://ocltc:8111/viewModification.html?modId=66278&personal=true
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gslbe/src/rt/GSLDevice.cpp#159 edit
SWDEV-2 - Change OpenCL version number from 2026 to 2027.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/utils/versions.hpp#1773 edit
SWDEV-2 - Change OpenCL version number from 2025 to 2026.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/utils/versions.hpp#1772 edit
SWDEV-2 - Change OpenCL version number from 2024 to 2025.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/utils/versions.hpp#1771 edit
SWDEV-86253 - [QR] 6 to 7% performance drop is observed in BasemarkCL test
CL1226184 adds serialization to LHIO, because pxproxy accesses global state, without locks, leading to crash, etc.
To fix OpenCL perf regressions, allow unserialized access to pxproxy. It may be that OpenCL design leads away from racy behavior, so it may be safe. This was checked in to gather information. What software gets perf drops? Does any software get fixed?
The dangerous functions are CreateDevice, CreateContext, because the handles from the OS are saved in global caches, and if those global caches are modified in one thread, while other threads are looking-up from the caches - that is a problem.
TC: http://ocltc:8111/viewModification.html?modId=66278&personal=true
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gslbe/src/rt/GSLDevice.cpp#158 edit
SWDEV-2 - Change OpenCL version number from 2023 to 2024.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/utils/versions.hpp#1770 edit
SWDEV-2 - Change OpenCL version number from 2022 to 2023.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/utils/versions.hpp#1769 edit
SWDEV-2 - Change OpenCL version number from 2021 to 2022.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/utils/versions.hpp#1768 edit
SWDEV-2 - Change OpenCL version number from 2020 to 2021.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/utils/versions.hpp#1767 edit
SWDEV-2 - Change OpenCL version number from 2019 to 2020.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/utils/versions.hpp#1766 edit
SWDEV-2 - Change OpenCL version number from 2018 to 2019.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/utils/versions.hpp#1765 edit
SWDEV-85649 - The return of owner() needs to be casted to get amd::Image.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpumemory.cpp#125 edit
SWDEV-79308 - Use 64-bit to calculate the scratch buffer size for OCL. We observed that the computed scratch buffer size could be > 4G when compilier optimization option is not used.
Cross branch change - requires CL1231547.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gslbe/src/rt/GSLDevice.cpp#157 edit
SWDEV-2 - Change OpenCL version number from 2017 to 2018.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/utils/versions.hpp#1764 edit
SWDEV-2 - Change OpenCL version number from 2016 to 2017.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/utils/versions.hpp#1763 edit
SWDEV-2 - Change OpenCL version number from 2015 to 2016.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/utils/versions.hpp#1762 edit
SWDEV-2 - Change OpenCL version number from 2014 to 2015.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/utils/versions.hpp#1761 edit
SWDEV-2 - Change OpenCL version number from 2013 to 2014.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/utils/versions.hpp#1760 edit
SWDEV-2 - Change OpenCL version number from 2012 to 2013.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/utils/versions.hpp#1759 edit
SWDEV-82353 - Remove assert and only assign the customHostAllocDevice_ with the first device that has customHostAllocator.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/platform/context.cpp#38 edit
SWDEV-2 - Change OpenCL version number from 2011 to 2012.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/utils/versions.hpp#1758 edit
SWDEV-82159 - [CQE OCL][ISV][QR] Error is observed while debugging the sample with CodeXL; Faulty CL:1208929
[Synopsis]
compile from binary logic changes caused issue with resulting binary generation in CodeXL
[Solution]
do not use compile options from binary if they are explicitly specified
[Testing]
precheckin, MCL
Reviewed by Evgeniy Mankov, German Andryeyev
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/platform/program.cpp#78 edit
SWDEV-2 - Change OpenCL version number from 2010 to 2011.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/utils/versions.hpp#1757 edit
SWDEV-85602 - rename hsail-64 arch to hsail64
This is to match other existing llvm targets, such as spir64 and amdil64, as well as to match behavior of open source HSAIL BE.
For legacy users there is alias "-hsail-64" provided in the aoc2 only.
Testing: smoke, precheckin
Reviewed by Matthew Arsenault, Evgeny Mankov and Nikolay Haustov
Affected files ...
... //depot/stg/opencl/drivers/opencl/compiler/legacy-lib/backends/common/codegen.cpp#2 edit
... //depot/stg/opencl/drivers/opencl/compiler/legacy-lib/backends/common/frontend.cpp#4 edit
... //depot/stg/opencl/drivers/opencl/compiler/legacy-lib/utils/v0_8/target_mappings.h#5 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/codegen.cpp#66 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/frontend.cpp#37 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/utils/v0_8/target_mappings.h#37 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Target/HSAIL/HSAILTargetMachine.cpp#53 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Target/HSAIL/TargetInfo/HSAILTargetInfo.cpp#6 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/tools/aacl/aa.h#2 edit
... //depot/stg/opencl/drivers/opencl/compiler/tools/aoc2/aoc2.cpp#80 edit
... //depot/stg/opencl/drivers/opencl/library/hsa/amp_libm/build/Makefile.amp_libm#4 edit
... //depot/stg/opencl/drivers/opencl/library/hsa/gcn/build/Makefile.gcn#20 edit
... //depot/stg/opencl/drivers/opencl/library/hsa/gcndev/build/Makefile.gcndev#3 edit
... //depot/stg/opencl/drivers/opencl/library/hsa/hsail/build/Makefile.hsail#44 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpucompiler.cpp#153 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpuprogram.cpp#222 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/hsa_foundation/hsacompiler.cpp#5 edit
... //depot/stg/opencl/drivers/opencl/tests/hsa/bin/test_driver.pl#25 edit
... //depot/stg/opencl/drivers/opencl/tests/hsa/tlst/complib.tlst#21 edit
... //depot/stg/opencl/drivers/opencl/tests/hsa/tlst/ocl_debug.tlst#9 edit
... //depot/stg/opencl/drivers/opencl/tests/hsa/tlst/ocl_regression.tlst#25 edit
... //depot/stg/opencl/drivers/opencl/tests/ocltst/module/spir/SPIRBase.cpp#3 edit
... //depot/stg/opencl/drivers/opencl/tests/ocltst/module/spir/SPIRVBasic.cpp#10 edit
... //depot/stg/opencl/drivers/opencl/tests/ocltst/module/spir/SPIRVDropIn.cpp#5 edit
SWDEV-83192 - [CQE OCL][2.0][QR] Few MCLSubtests are falling due to faulty cl#1208929
[Synopsis]
Failure is because of additional check on compilation options existence in binary, which are expected in a separate section in the input binary. Options are expected on HSAIL path in order to make a decision whether to recompile or not the input code. AMDIL path has another strategy for recompilation algorithm and doesn't need options to be obligatory presented in input binary.
[Solution]
Remove options existence check in the input binary when compiling from BINARY_TYPE_ELF.
P.S.
With the fix HSAIL path also doesnt require compilation options existence in input binary anymore. Recompilation will be done silently in such case.
[Testing]
Pre checkin, MCL
Reviewed by Evgeniy Mankov, Nikolay Haustov, German Andryeyev
http://ocltc.amd.com/reviews/r/9560/
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/platform/program.cpp#77 edit
SWDEV-2 - Change OpenCL version number from 2009 to 2010.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/utils/versions.hpp#1756 edit
SWDEV-79308 - Resubmit of CL1228064 with restriction of mininum scratch buffer size of 64K if a scratch buffer is needed.
Reduce the total scratch buffer size by a factor of 4, which in effect reducing the max. scratch waves from 32 to 8, to avoid the required total scratch buffer size exceeds the available local memory.
Made sure the scratch buffer size is aligned with 64K boundary
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpuresource.cpp#235 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gslbe/src/rt/GSLDevice.cpp#156 edit
SWDEV-2 - Change OpenCL version number from 2008 to 2009.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/utils/versions.hpp#1755 edit
SWDEV-2 - Change OpenCL version number from 2007 to 2008.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/utils/versions.hpp#1754 edit
SWDEV-2 - Change OpenCL version number from 2006 to 2007.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/utils/versions.hpp#1753 edit