Commit Graph

620 Commits

Author SHA1 Message Date
Tao Sang 33d212d09a Fix crash in delete of TempWrapper
OCLTST crashing at oclruntime.OCLKernelBinary for
Tahiti because of deleting on pointer vector which
is however a single pointer. The fix will correct
the wrong deleting in TempWrapper destructor.

Change-Id: Ic5a1387a426c102b085a4ef8ff8ff05e6a870cba


[ROCm/clr commit: 6a6faf1d58]
2020-10-26 16:04:39 -04:00
Jason Tang 649f1872d9 SWDEV-254181 - Fix ocl min_max_image_buffer_size regression.
ROCr is now reporting the actual HW addressing limits for HIP, so OpenCL will have to impose lower limit.

Change-Id: I60c2ce27ed1d1f45f16fb76438965a236ba872c6


[ROCm/clr commit: 1da0fe4263]
2020-10-26 09:15:31 -04:00
German Andryeyev 7df8e0bcb3 Correct reported info in ROC profiler
OCL can't distinguish different copy types, but ROC profiler
expects SDMA transfer visibility. Add extra code to detect
a transfer with the host memory and substitute OCL command

Change-Id: I5290acd0e10bc082e00c1d4ae1474a075de7f165


[ROCm/clr commit: bd340d8cbf]
2020-10-23 18:29:48 -04:00
Alex Xie 5f908ad056 SWDEV-256126 - Linux pro Nuke app crash with "Out of memory "while running Rip plugin test
We unmap a memory with a different pointer.
ROCr runtime might be confused and silently ignore the unmap request

Change-Id: Ic5a1387a426cf02a985a4ef8ff8ff05e6a870cbf


[ROCm/clr commit: e5588f188c]
2020-10-21 11:33:42 -04:00
Vladislav Sytchenko 5ba1294a49 [PAL] Change free mem tracking logic to use PAL size
PAL may internally align up the allocation size to the page size
reported by KMD. This will cause a mismatch in size between OCL and PAL.

To avoid this, use PAL size when updating the free memory counter on
both alloc and free.

Change-Id: Ic6e8c861a52170476474fb70a769eef93be3261f


[ROCm/clr commit: be66e29e94]
2020-10-20 12:10:14 -04:00
Jason Tang 091f1e8e85 Change file mode 755 back to 644
Change-Id: I4ba5d66997ffd3331c56674d4bf805160dcdf049


[ROCm/clr commit: 25cc965c76]
2020-10-19 15:09:32 -04:00
German Andryeyev 9f4f72faef Upgrade PAL interface version to 632
Change-Id: I1b8b936cc9bc59ff80296cc6bf5137c3af398c5d


[ROCm/clr commit: cb4e6bd264]
2020-10-16 13:12:16 -04:00
German Andryeyev ff4819a791 Reduce the number of allocated signals
Enable this optimization when the barrier is disabled, since
reuse requires a signal wait.
Use the size of pending AQL signals as the size of signal pool.

Change-Id: I2754a0f8b67e19d2601c58945e10fdf0e8be1624


[ROCm/clr commit: a5661192b6]
2020-10-15 16:39:33 -04:00
Alex Xie 23a7abc8e8 SWDEV-251360 - Add tracing for memory allocation/free.
This can be used to debug VM fault

Change-Id: I7685485b0450ea84d10b710639ad7b6c5ec2fcf3


[ROCm/clr commit: e4e6c46356]
2020-10-15 15:38:55 -04:00
Rahul Garg 7b0edf7aa0 Fix PCI bus domain ID
SWDEV-256338

Change-Id: I09afdca4f1a08f99ce662a4c4ed8a51d85500699


[ROCm/clr commit: a224dc2a7b]
2020-10-15 14:59:57 -04:00
Rahul Garg 40b90694c6 Add image1DMaxWidth_ for maxTexture1D property
Needed by SWDEV-254068

Change-Id: Ic650dfb6e5b38d7544ba647c53de52deda39b92d


[ROCm/clr commit: c0f8b52f06]
2020-10-14 17:30:43 -04:00
Vladislav Sytchenko 36c8902ed8 [PAL] Allow more heaps for non-SVM suballocations
On ReBar systems the invible heap is not present, so in theory we should
fail creating the suballocation chunk, however PAL doesn't report any
errors.

To make sure we never fail, allow creating the allocation in the visible
heap and system memory.

Change-Id: Iea9cc68d98b9cb396a2b7a37398b98b66274083b


[ROCm/clr commit: 330b674821]
2020-10-14 16:56:12 -04:00
Vladislav Sytchenko 3e6989c1c2 [PAL] Allow for embedding debug info into IBs
Change-Id: I4473b9c5aa36370d9af37f22a78f4414eaa21e01


[ROCm/clr commit: 2ec5a47c88]
2020-10-14 15:54:48 -04:00
Jason Tang 7457150c80 Add COMGR_DYN_DLL to device/rocm/CMakeLists.txt
Now rocm/rocdevice.cpp also includes comgrctx.hpp, and we don't want to statically link against comgr when buidling shared libs.

Change-Id: Ic330bd860559b3e07b776c951afe6126b0f43f7d


[ROCm/clr commit: b38317cb3c]
2020-10-14 09:28:37 -04:00
Vladislav Sytchenko fcae92ce47 [PAL] Allow overriding reported asic revision
This is helpfull to do when debugging issues on lowend asics. Navi14 can be emulated as Navi10. So can Navi22 be emulated as Navi21.

Change-Id: I693ffd45a5b03657822afdc872781901bc69b65c


[ROCm/clr commit: 26d1b28b16]
2020-10-13 09:36:15 -04:00
agodavar 0914a414db SWDEV-254185 : hiprtc headers - handle empty headerIncludeNames
Change-Id: Ie06278c18b62cef1bdfbb8ac82728ed5667b2047


[ROCm/clr commit: 92f1ce41dc]
2020-10-13 09:23:43 -04:00
German Andryeyev 2b3377b0bc Add ROCr queries for HMM support
Change-Id: I2b5508bf0faf8f48dd7348d6a5202fb28de09876


[ROCm/clr commit: c05de4f2f9]
2020-10-13 09:12:00 -04:00
agodavar 6dddb8ffac SWDEV-254185 - Added support to pass include headers to hipRTC
Change-Id: Ic7f2957b04e518c57e2fd3fc9d839de07232405e


[ROCm/clr commit: ac72e50adc]
2020-10-12 03:46:04 -04:00
Vladislav Sytchenko 1d35a5a69b [PAL] Skip extra calls to MakeResident
With the PAL_ALWAYS_RESIDENT flag memory objects are resident at allocation time, no need to make them resident again before submit.

Also we should never evict anything with this setting, or we'll generate a VM fault.

Change-Id: Ieacc6af88ab4e09c20efd94100e148b2502e1d70


[ROCm/clr commit: fd09a7a23c]
2020-10-09 14:13:32 -04:00
German Andryeyev 2c21a44b40 Add option to skip AQL barrier
The change reuses HSA signals for dispatches as a wait signal.
Skipping the barrier requires to  disable L2 cache for sysmem
allocations and extra tracking for HDP access with the large bar.
ROC_BARRIER_SYNC=0 activates the new logic. Barrier sync is
still used by default.
ROC_ACTIVE_WAIT=1 enables unconditional active wait in ROCr.
The change also consolidated ROCr wait logic under single function.

Change-Id: I6bd1be30aa88258da1b1f9de319ef5a45852afd8


[ROCm/clr commit: d9397590de]
2020-10-06 08:37:12 -04:00
Sarbojit Sarkar 70d71642d2 [perf]hipMalloc performance optimization
Change-Id: I6e8a918cc1c4cafad197b09e10755cd180e11ead


[ROCm/clr commit: 4a025e1a87]
2020-10-06 03:19:41 -04:00
Sarbojit Sarkar ed1828ea72 SWDEV-253548 : clean up gfx-arch macros
Change-Id: I8deb2ea44f556260bb78d24f68b04b0c730ed4d8


[ROCm/clr commit: 8ab8fac173]
2020-10-06 03:17:09 -04:00
German Andryeyev 7229c259ca Add support for CPU device in advise
Change-Id: I7250e0183580c14cd3d6050ef85f9ce26e36f4a8


[ROCm/clr commit: df63547906]
2020-10-05 12:52:46 -04:00
Tao Sang 9e61c14aeb Fix empty cpu agent on raven system
Change-Id: I30f5e65367613152ce96b80b13e1c9f2a28da807


[ROCm/clr commit: bc7291e85c]
2020-10-05 10:54:57 -04:00
Vladislav Sytchenko 2acef41e2c [PAL] Add entry for unannounced device
Change-Id: I323f240068ee1eff6981e69b7a2837f06157e44b


[ROCm/clr commit: f26bb1d76d]
2020-10-02 13:52:25 -04:00
Vladislav Sytchenko 622d3f286c [PAL] Detect if resizable bar is enabled
Change-Id: I54b2e878d1cf7235a848a4b243f878538e226702


[ROCm/clr commit: 11bdf0005f]
2020-10-02 12:25:00 -04:00
German Andryeyev 7959329169 Revert "Reduce the default size of the signal pool"
This reverts commit 6e0c211730.

Reason for revert: a regression

Change-Id: I78180ba011f45af9a4cce110b14f379aa10f7d3a


[ROCm/clr commit: af8426b0e4]
2020-10-01 09:56:05 -04:00
Vladislav Sytchenko 46c26cc6d8 Fix Windows build
Change-Id: Icdc723843541a5c13503670b5f972b78db0cccbf


[ROCm/clr commit: 1183455755]
2020-09-30 14:40:07 -04:00
Jatin Chaudhary 2a16ef5d04 Adding and populating available registers per cu value
Change-Id: Ide012038a9d74b20166ce1e69a9f2c0cbdce0d73


[ROCm/clr commit: d0f009a0ee]
2020-09-28 05:30:23 -04:00
kjayapra-amd a3212c53b7 SWDEV-241896 - Remove extern support in ROCclr/HIP since compiler added Texture Reference support.
Change-Id: I2cf27e13a53860fe11e9245c9cbdcb8bd88a7872


[ROCm/clr commit: 4071cf1a16]
2020-09-25 10:20:16 -04:00
Jason Tang 4c0e5d238d Avoid using sdma engine if there's none
Change-Id: Id8d373683f3e1667ab461b4c5b8b490377b64cc0


[ROCm/clr commit: 40b432f992]
2020-09-25 09:48:10 -04:00
Aryan Salmanpour b01d49542c Fix a crash when printf used in a kernel launched on a stream with custom CU mask
SWDEV-249719 - root cause: queues with custom CU mask are not inserted
into queuePool_ (i.e., queue of reusable HSA queues) of ROC device class
causing a crash when creating hostcall buffers for printf

Change-Id: Ieee7005d9a5a30b3113394ce23ee65927126d0d6


[ROCm/clr commit: 2e199bd492]
2020-09-25 09:25:19 -04:00
kjayapra-amd 267f3797f5 SWDEV-253063 - Code changes to make Image Buffer Workaround only for targets gfx 10.1
Change-Id: I17044a1c0775f427b9ba712eb3fd5ab21ed88b0e


[ROCm/clr commit: 18352d189b]
2020-09-23 11:07:15 -04:00
kjayapra-amd b3e8c5cdb0 SWDEV-252542 - Fixing Win Compilation on SWDEV-241902.
Change-Id: If76f79002b265dccf6da4acef1ff9372d8b0a2ff


[ROCm/clr commit: 7462e39954]
2020-09-18 12:11:56 -04:00
Satyanvesh Dittakavi c667dc6fa0 set free mem to zero avoding underflow
Change-Id: I964b41695fb41712624146c5959a35b37eacf52d


[ROCm/clr commit: 90c694988b]
2020-09-18 11:56:57 -04:00
kjayapra-amd 3e6cf63a83 SWDEV-241902 - Changes to pass file descriptor and offset to load code object.
Change-Id: I0243cccdeaa533b2a56fde42f12d5424c3b63a3b


[ROCm/clr commit: a66c56d641]
2020-09-15 07:54:24 -04:00
kjayapra-amd 095c775e83 SWDEV-251941 - Adding gfx1030,gfx1031 support to mainline
Change-Id: I752dff86651a55f4fbf719e84ee7d3ec49f5f207


[ROCm/clr commit: 11b723a605]
2020-09-14 09:07:44 -04:00
Vladislav Sytchenko 60b435a7c3 Fix typo
Change-Id: I571e84cab9258dfd5e94b70865505f452ed89016


[ROCm/clr commit: be0d98b433]
2020-09-12 20:16:27 -04:00
Jason Tang 61c85339c3 SWDEV-252095 - Fix progvar_prog_scope_misc test Aborted (core dumped)
The progvar_prog_scope_misc test expects CL_DEVICE_MAX_MEM_ALLOC_SIZE to be multiple of integer.

Change-Id: Ic0690f5ab06ffa3feafb718beabbcf83ab53978c


[ROCm/clr commit: 740f1ba0aa]
2020-09-11 12:36:39 -04:00
Sarbojit Sarkar f111d53228 Fix for memory leak detected in hipModule*load [SWDEV:250740]
Change-Id: I8c4930b64764620a896079b14b27f6f87fbad292


[ROCm/clr commit: 677208f2de]
2020-09-10 10:50:46 -04:00
Laurent Morichetti c863b2074b Use std::atomic
Replace amd::Atomic with std::atomic. Remove make_atomic uses by
converting the variable to std::atomic and making sure the memory
order is relaxed when synchronizes-with is not needed.

Delete utils/atomic.hpp.

Change-Id: I0b36db8d604a8510ac6e36b32885fd16a1b8ccfa


[ROCm/clr commit: 5d4b6f74d3]
2020-09-09 14:55:29 -04:00
German Andryeyev 6e0c211730 Reduce the default size of the signal pool
Implement dynamic signal pool grow per allocated queue

Change-Id: Ie8b17937d72c29cc49e59639c4b2023ea984b14c


[ROCm/clr commit: e68d671a51]
2020-09-09 09:53:52 -04:00
Tao Sang c6a000f618 Fix compiling issue exposed by opencl TC build
1.Some files are not built in rocclr so the issues are
not found in rocclr build. But the issues are exposed
in TC build.
2.Clear unused codes in test cmake file.

Change-Id: I1ad4decdf4df5237b93e1ea2547eb39a19f7dc4a


[ROCm/clr commit: 65075e72f1]
2020-09-08 12:40:22 -04:00
Jason Tang eaf65e59ae Remove gfxipVersion_ from device level
Change-Id: I11485beffdb9371a20d7abcaa1d1774c102db574


[ROCm/clr commit: 5ecce5c287]
2020-09-07 11:33:49 -04:00
Alex Xie f8dd901fc2 SWDEV-250136 - [LNX][Navi21][OCL over ROCr] OpenCL-GL sharing failed
Change-Id: Id61f649f035964d14f6399dbea03137c11f8eaea


[ROCm/clr commit: 2c2665665d]
2020-09-06 10:40:56 -04:00
kjayapra-amd bfaa8f8ab5 SWDEV-240800 - P2P device attributes support
Change-Id: I2b060a66715f676dfb7136940e69e21288f509d8


[ROCm/clr commit: 0163d8acc0]
2020-09-03 14:41:53 -04:00
Vladislav Sytchenko 618619e903 Navi21 support
Change-Id: I7263556fdb85dc0152a2a72cc0ec4d7cd5e978a6


[ROCm/clr commit: d6e89ec371]
2020-09-03 11:14:37 -04:00
Sarbojit Sarkar a5c2a7ff84 Fix for HIP_VISIBLE_DEVICE [SWDEV-247751]
Change-Id: Iff0ca6646f9d97b1ffa378c3cdc44159b6bf8ad0


[ROCm/clr commit: 8ac8384aea]
2020-09-02 02:08:56 -04:00
Alex Xie e0cb881d91 SWDEV-249516 - [Lnx][Navi][rocm]conformance image read write tests data error
Change-Id: Ie1c4fda953198b49ed66fea9da23e62c686d9cea


[ROCm/clr commit: 7e8f7b5927]
2020-09-01 17:20:58 -04:00
Tao Sang 5f84733220 Fix OpenCL test crash on some devices
Replace constexpr with const in kernel source
codes because some kernel compiler doesn't
support constexpr.

Replace scheduler with __amd_rocclr_scheduler
due to name change.

Change-Id: I1ad4ddcdf1df5237b83e1ea2447eb39a19f7dc4a


[ROCm/clr commit: 9c5465f9e1]
2020-08-29 12:29:07 -04:00