EPR #010002 - Change OpenCL version number from 1621 to 1622.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/utils/versions.hpp#1368 edit
ECR #333753 - unify online/offline linkers
The code for "FixUpModule" from the online linker is now moved to
a common file under llvm/lib. This replaces the copy present in
llvm/tools/llvm-link, thus unifying the two linkers.
Reviewed by Stanislav Mekhanoshin, Yaxun Liu (Sam)
Passes smoke, smoke_clang and precheckin.
Also passes OpenCL 2.0 conformance tests.
Affected files ...
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/linker.cpp#109 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/include/llvm/AMDFixupKernelModule.h#1 add
... //depot/stg/opencl/drivers/opencl/compiler/llvm/include/llvm/AMDUtils.h#1 add
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Linker/AMDFixupKernelModule.cpp#1 add
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Transforms/Utils/AMDUtils.cpp#1 add
... //depot/stg/opencl/drivers/opencl/compiler/llvm/tools/llvm-link/AMDFixUpModule.cpp#12 delete
... //depot/stg/opencl/drivers/opencl/compiler/llvm/tools/llvm-link/llvm-link.cpp#48 edit
EPR #010002 - Change OpenCL version number from 1619 to 1620.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/utils/versions.hpp#1366 edit
ECR #304775 - Optimization for rectangular copies(Part2). Due to HW restriction of 14bits for src and dst pitch, its advantageous to choose optimal bpp. Higher the bpp the larger the byte pitch. This indirectly helps to reduce the number of packets for buffer copy(line by line vs a single sub_win raw packet)
ReviewBoardURL = http://ocltc.amd.com/reviews/r/5605/diff/
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpublit.cpp#109 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpuresource.cpp#191 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpuresource.hpp#76 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gslbe/src/rt/GSLContext.cpp#64 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gslbe/src/rt/GSLContext.h#38 edit
EPR #010002 - Change OpenCL version number from 1618 to 1619.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/utils/versions.hpp#1365 edit
EPR #404714 - [CQE OCL][2.0][DTB]Opencl1.2 WF Conf. Math test failedon Pitcairn and Oland due to CL#1065597
- FIx for TC regression after CL#1069020. Move the lock directly to the gsl flush() calls.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpuvirtual.cpp#332 edit
ECR #333753 - Compiler Lib: improve & refactor HSAIL text routines
+ HSAIL text is always being inserted into BIF now in one place of Codegen phase
+ AMDIL & HSAIL paths are unified at Codegen phase
+ Error handling is improved
Testing: make smoke_clang, pre check-in
Reviewers: Brian Sumner, Nikolay Haustov
Affected files ...
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/v0_8/if_acl.cpp#47 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/gpu/hsail_be.cpp#32 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/gpu/hsail_be.hpp#10 edit
EPR #010002 - Change OpenCL version number from 1617 to 1618.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/utils/versions.hpp#1364 edit
EPR #404714 - [CQE OCL][2.0][DTB]Opencl1.2 WF Conf. Math test failedon Pitcairn and Oland due to CL#1065597
- Add a new MapCacheLock monitor to separate the map cache from the global lock
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpudevice.cpp#456 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpudevice.hpp#131 edit
EPR #404714 - [CQE OCL][2.0][DTB]Opencl1.2 WF Conf. Math test failedon Pitcairn and Oland due to CL#1065597
- Add VGPU lock to flush() method, because gsl flush for the same context could be called from multiple threads
- Use new scratchAlloc_ monitor for scratch reallocation
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpudevice.cpp#455 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpudevice.hpp#130 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpuvirtual.cpp#331 edit
EPR #010002 - Change OpenCL version number from 1616 to 1617.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/utils/versions.hpp#1363 edit
ECR #333753 - Compiler Lib & RT: Fix for Compiler's build log printing on RT.
+ RT now asks correctly Compiler's build log by aclGetCompilerLog().
+ BuildLog is added for HSAILKernel by moving it from NullKernel class to Kernel class.
+ Compiler's Lib appendLogToCL() is fixed.
+ Usage of API's aclExtractSection/aclExtractSymbol/aclInsertSection/aclInsertSymbol in Compiler Lib itself replaced by it's inner realizations extSec/extSym/insSec/insSym due to unneded build log clearing in first case.
+ Phase info is added to build log even if CallBack function is not presented for aclCompiler.
How to verify:
set AMD_OCL_BUILD_OPTIONS_APPEND="-print-compile-phases -buildlog=stdout"
test_integer_ops integer_ctz
test_integer_ops integer_ctz cpu
Testing: make smoke_clang, selective OCL conf. tests, pre check-in
Reviewer: Brian Sumner, German Andryeyev
Review board: http://ocltc.amd.com/reviews/r/5582/
Affected files ...
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/v0_8/if_acl.cpp#46 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/gpu/brig_loader.cpp#13 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/gpu/hsail_be.cpp#31 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/utils/v0_8/libUtils.cpp#4 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/device.hpp#228 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpukernel.cpp#262 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpukernel.hpp#100 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpuprogram.cpp#174 edit
EPR #010002 - Change OpenCL version number from 1615 to 1616.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/utils/versions.hpp#1362 edit
ECR #304775 - HSAIL: Direct SRD support
- Copy SRD to CB1 for image views to avoid a wait for SRD resource when image view is destroyed.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpukernel.cpp#261 edit
EPR #010002 - Change OpenCL version number from 1614 to 1615.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/utils/versions.hpp#1361 edit
ECR #304775 - Refactor code to do line by line copies for read\write Rect. This avoids taking the blit copy path which may be even slower.
ReviewBoardURL = http://ocltc.amd.com/reviews/r/5567/
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpublit.cpp#108 edit
ECR #304775 - Correct a typo where I didnt remove the offset from the condition which made the writeRect take pinning path.
ReviewBoardURL = http://ocltc.amd.com/reviews/r/5566/diff/
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpuvirtual.cpp#330 edit
EPR #010002 - Change OpenCL version number from 1613 to 1614.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/utils/versions.hpp#1360 edit
EPR #010002 - Change OpenCL version number from 1612 to 1613.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/utils/versions.hpp#1359 edit
ECR #304775 - Back out CL#1061045. Its hanging Linux
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpuappprofile.cpp#9 edit
EPR #010002 - Change OpenCL version number from 1611 to 1612.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/utils/versions.hpp#1358 edit
ECR #333753 - RT: Bug 10185 fix
[Bug] "Failure in 1.2 conformance sub-test 'program_binary_type' of 'compiler' and sub-test 'binary_create' of 'api' when forced to run in HSAIL path".
P.S. Failure also occurs in 2.0 conformance above-stated tests.
[Problem] HSAIL text is inserted by Compiler Lib into the BIF as a symbol of .cg section, but RT extracts it as a whole section.
As a result in the extracted bits another .cg sections symbol __Loader_Map is also presented in the beginning and with trailing zeroes. This leads to cropping the whole HSAIL text while casting to string; then RT silently doesn't perform kernels' finalization cause unable to find any kernel name in the extracted hsail. Finally the binary produced based on clCreateProgramWithBinary has the different sections/symbols order from the binary produced based on clCreateProgramWithSource.
[Solution] Extract Symbol __HSAIL_main_text instead of the section aclCODEGEN contains it.
[Testing] smoke_clang, pre check-in
[Reviewers] German Andryeyev, Brian Sumner
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpuprogram.cpp#172 edit
EPR #010002 - Change OpenCL version number from 1610 to 1611.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/utils/versions.hpp#1357 edit
EPR #404357 - [OCL 2.0][CPU] CPU should not report OCL 2.0 version in CLINFO
- Report OCL1.2 by default on CPU
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/cpu/cpudevice.cpp#266 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/cpu/cpusettings.cpp#26 edit
... //depot/stg/opencl/drivers/opencl/runtime/utils/flags.hpp#212 edit
EPR #010002 - Change OpenCL version number from 1609 to 1610.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/utils/versions.hpp#1356 edit
ECR #304775 - Device enqueuing
- Provide scratch buffer offset for generic address space
- Use single scratch buffer for all available queues. Each queue will have a unique subbuffer in the global buffer
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpudevice.cpp#454 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpudevice.hpp#129 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpusched.hpp#11 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpuschedcl.cpp#24 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpuvirtual.cpp#329 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpuvirtual.hpp#120 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gslbe/src/rt/GSLContext.cpp#63 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gslbe/src/rt/GSLContext.h#37 edit
EPR #010002 - Change OpenCL version number from 1608 to 1609.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/utils/versions.hpp#1355 edit
EPR #010002 - Change OpenCL version number from 1607 to 1608.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/utils/versions.hpp#1354 edit
ECR #304775 - Add new flag GPU_IFH_MODE to allow IFH mode testing without using the inifile.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gslbe/src/rt/GSLDevice.cpp#97 edit
... //depot/stg/opencl/drivers/opencl/runtime/utils/flags.hpp#211 edit
EPR #403687 - [CQE OCL][2.0][NI][QR] WF 1.2 Conf: Failures observed in Images/ClFillImage test in Linux & Windows; Faulty CL#1057445
Issue: This issue happens because the image setting for NI is different from SI and above. It may take some time to fix NI issue for image RGB_101010.
Current user(MM team) is NOT asking RBG_101010 support for NI and previous asics.
Solution: Support image format (CL_RGB, CL_UNORM_INT_101010) on gpu only from OCL 2.0.
Code Review Request: 5494
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/platform/memory.cpp#107 edit
EPR #010002 - Change OpenCL version number from 1606 to 1607.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/utils/versions.hpp#1353 edit
EPR #010002 - Change OpenCL version number from 1605 to 1606.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/utils/versions.hpp#1352 edit
ECR #333753 - RS compilation path.
RS compilation will be in 2 stages, first generates BRIG and the next is done via HSA Finalize API (that involves a load step).
Existing code in compiler/lib has a bug in that when the final output expected is HSAIL_BINARY, compilation should stop with invoking the llvm compiler (and the built-in assembler), not go all the way to ISA.
Tests: precheckin, hsa smoke
hsa/tests/RS/ test harness will be changed in a separate changelist.
Affected files ...
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/v0_8/if_acl.cpp#44 edit
... //depot/stg/opencl/drivers/opencl/compiler/tools/aoc2/aoc2.cpp#57 edit
EPR #403199 - Reduced the max number of command queues
"multi_device_context" fails with CF mode because there is not enough buffer for IB on Linux
http://ocltc.amd.com/reviews/r/5454/
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/utils/flags.hpp#210 edit
EPR #403896 - [OpenGL] - Use GFXIP instead of asic family name
This is the first step to using a GFXIP version instead of the asic family names wherever possible in our driver. It is only being used for a few checks right now, and there will be more changes after this to use it in more places.
- Added GFXIP so that we can reference IP version instead of checking asic family names. This is being done so it's more clear about which version of gfx ip a given asic is, since marketing often uses a different family name than engineering (ex. Hawaii is a VI part from marketing standpoint). This also reflects the HW team's move towards using the gfxip version instead of a family name. Another benefit is it will clean up our asic family checks quite a bit, and they should be a bit more forward looking as well.
- Added some asserts for when gfxip 9 comes along we know the places we need to validate. It hasn't been determined yet if gfxip 9 will use the same hwl, so if it doesn't, these asserts will be removed then.
- Removed all references of Kauai, Tiran, and Maui from our driver since these asics were all cancelled at some point previously.
- Changed Distributed Tessellation enablement criteria to be gfxip 8+ && numSE > 1 instead of checking asic names.
ReviewBoardURL = http://ocltc.amd.com/reviews/r/5450/
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gslbe/src/rt/GSLDevice.cpp#96 edit
EPR #010002 - Change OpenCL version number from 1604 to 1605.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/utils/versions.hpp#1351 edit
EPR #010002 - Change OpenCL version number from 1603 to 1604.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/utils/versions.hpp#1350 edit