Commit Graph

345 Commits

Author SHA1 Message Date
Sarbojit Sarkar d8d6c4e55d SWDEV-280089 - nullptr was getting added into MemObj
Change-Id: Ica56126156198140a143182de3d93d86730cadf1
2021-04-06 23:41:50 -04:00
Sourabh Betigeri 21ea81d5b9 SWDEV-273265 - Fix to wait on a pending dispatch in PAL.
Change-Id: I431cedfef5d5cb727c35ba8e294528017bfe2088
2021-04-06 13:13:07 -04:00
Julia Jiang f22ceb0fd8 SWDEV-272268, SWDEV-268186 - OCL change for Rebar optimization:fix regressions in OCLMemInfo and Conformance basic test
Change-Id: I3e709942b5f43ba52a4cb0824a2e6b3202d4b405
2021-04-06 10:53:12 -04:00
German Andryeyev 2d41031aec SWDEV-279288 - Move the batch condition
The check has to be performed inside the signal loop, because
active signals need to be processed to avoid a stale timestamp
class.

Change-Id: I26af8287aae18eb19c096d9358cd0b86cfd1c561
2021-04-06 10:22:31 -04:00
German Andryeyev a71f7f931e SWDEV-279288 - Avoid profiling info for the sync barrier
- With direct disaptch profiling state is enabled to trigger the
callback on HSA signal. However ROCr has very low peformance on
the first call to get the profiling info. That impacts some tiny
performance tests.

Change-Id: Idacd1b10a473fcfb5feef3074b7191d35743f769
2021-04-05 12:54:23 -04:00
Todd tiantuo Li 0d7ded0bfb SWDEV-1 - enable gfx90c for ROC and PAL paths
Change-Id: If5c4f1ca1b136e14b9e11cd27b1beff386adc377
2021-04-01 12:02:08 -07:00
Alex Xie 0de4b2962c SWDEV-268914 - Linux, AMF, tests fail to scale images down
This is part 2 of the change. This is for PAL backend.
The parent buffer sometimes has newer data than the sub buffer or image.
We always need to copy the data into copybuffer in pitch workaround.

Tests:
clinfo
Conformance tests: all images test, info, API, basic.
Internal runtime tests

Change-Id: I97d876ac75b240e69b48244be4c9e522db24f8ac
2021-03-31 11:17:56 -04:00
Alex Xie 090cf6c6d3 SWDEV-276304 - [Navi][OpenCL][Linux]AMF Converter generate corrupted Frames
This is part 2 of the code change for PAL.
The copy image workaround could be recursively used by ROCclr blit kernel.
Avoid such situation by using stack variable.

Tests:
clinfo.
Conformance tests - basic, API, info, and all images tests.
Internal runtime tests - all passed.

Change-Id: I3c822e55398cdf35c2c4a46ed9fc20fbee7cc908
2021-03-30 15:56:01 -04:00
Alex Xie 2bd1836049 SWDEV-276304 - [Navi][OpenCL][Linux]AMF Converter generate corrupted Frames
The copy image workaround could be recursively used by ROCclr blit kernel.
Avoid such situation by using stack variable.

Change-Id: Iadaa8cad9216220194760dd461a9533bb236aea0
2021-03-30 12:07:00 -04:00
pghafari f1d58ae0d6 SWDEV-245532 - HIP - Vulkan interop
Change-Id: I741f48e095c203bb1304f5b5e44f8c87b14b5497
2021-03-29 12:06:35 -04:00
pghafari e64ce02ea2 SWDEV-245532 - HIP - Vulkan interop
Change-Id: I0be4279bb1037640d138dd07e125b78a719743ca
2021-03-26 13:59:13 -04:00
German Andryeyev 8c513407af SWDEV-278346 - Replace assert with LogWarning()
ROCr returns some unexpected values and for now just return
invalid device back to the app

Change-Id: Ia6fb709ed2dc77d77bd5d64de80b41b3720bed76
2021-03-25 10:19:33 -04:00
pghafari 6e888b15ff SWDEV-245532 - HIP - Vulkan interop
Change-Id: I0e5bc4862925f344b3fcadf1fa0c0acaeaae6c4d
2021-03-23 23:40:17 -04:00
Saleel Kudchadker d034c48405 SWDEV-271010 - Increase active wait time
Increase wait time for active wait to 50us

Change-Id: I8f269ab25ecc6775e655b9eb36fafc5f41a59c95
2021-03-11 13:16:59 -08:00
Jason Tang 8d01cbddbe SWDEV-3 - Backport M0 changes
Change-Id: I36f676713442479ede142b7e887656f0b658bc7b
2021-03-10 10:25:42 -05:00
Vladislav Sytchenko 07702bb28f SWDEV-232428 - Fix CI regressions caused by 99e8ac5
Change-Id: I6523a8abc19dc5b01f7eacb3a949da01afae60d5
2021-03-09 13:50:13 -05:00
Vladislav Sytchenko 27e3b875f7 SWDEV-232428 - Fix CI regressions caused by 99e8ac5
Change-Id: I36e9ce964f4d7733450eee356d425d23e1d7ff2c
2021-03-09 11:09:55 -05:00
Vladislav Sytchenko 99e8ac55cd SWDEV-232428 - PAL Hostcall support
Since the majority of the Hostcall implementation now sits in the
commmon layer, the PAL backend simply just needs to invoke it. One thing
that is missing though is HSA signal support.

The newly added pal::Signal class is a light emulaion of what HSA
signals provide. The current implementation is just enough to get
Hostcall working, but it can be expanded in the future if needed to
fully emulate HSA signals.

The major difference for now between PAL and ROCm hostcall
implemenations is that PAL doesn't support blocking signals. This will
be enabled in the near future. For now use active wait for PAL.

Change-Id: I746557354ab9d71a7d4a31f9320fcc2fee5aee7f
2021-03-09 10:44:34 -05:00
German Andryeyev e9c484d1ce SWDEV-274145 - process ACCESS_QUERY for all devices
HIP requires to return AccessedBy query for all device, but ROCr
can process one per query. Hence send the queries for all
available devices and then accumulate the results in runtime.

Change-Id: I082f9adb8e31c775a8ad1bf7a5af37440ef4bd16
2021-03-08 14:19:13 -05:00
German Andryeyev dee99ca807 SWDEV-272449 - Create RGP manager before CommitSettingsAndInit()
Enabling DebugVMID requires a certain sequence in
PAL initialization. StartLateDeviceInit() must be called before
CommitSettingsAndInit().

Change-Id: I7385a8cc89e7a8ad97a6b56ad6acbd2cf2f29728
2021-03-05 11:36:12 -05:00
German Andryeyev 7f32d0b425 SWDEV-272496 - Detect callbacks and force AQL barrier
HIP tests require HIP callbacks to be processed in another thread.
This change will use a thread from HSA signal callbacks to make
sure a HIP callback was done asynchronously.
Also process the callback before changing the status of command

Change-Id: Icef85d0e0f808663882cf6881ff1be3e5eca29ac
2021-03-05 11:33:51 -05:00
Jason Tang c13f9df42a SWDEV-1 - Change file mode back to 644
Change-Id: I433740d65c8f648e346107f6d8fa57d69463b713
2021-03-05 10:17:58 -05:00
Vladislav Sytchenko 8bb7399323 SWDEV-274766 - Fix temporary file name on Windows
Change-Id: Ie06e0d14ab27f40b230ed6051cf95f4902f07c7a
2021-03-04 14:38:46 -05:00
kjayapra-amd 95e3a6d985 SWDEV-259566 - Adding support to retrieve handle for offsetted pointer.
Change-Id: I4a700c31a9ab481c4ea43923af57e83247555ab0
2021-03-04 12:28:59 -05:00
Vladislav Sytchenko b4064ad557 SWDEV-1 - Remove unannounced asic
Change-Id: I0ec360e7f924dcfbc26bc70981a714abb57804c9
2021-03-03 23:21:41 -05:00
German Andryeyev fbde61de7f SWDEV-274199 - Enable SVM tracking
ROCr/KFD doesn't validate memory pointers. Enable validation inside
ROCclr, using SVM tracking mechanism.

Change-Id: I581e32ff37187f9ed8d9a302e8fd9f6ca935bdd7
2021-03-03 13:18:56 -05:00
Vladislav Sytchenko d8c1da5669 SWDEV-1 - [PAL] Force luxmark to use HSAIL on gfx10+
Change-Id: I929d6d15365d3a6e9fd7eaed0b8b4910694f9504
2021-03-02 16:16:56 -05:00
Ravi C Akkenapally e94d482c8f SWDEV-179105 - Stream Operations: Add feature querying support
Change-Id: I01cb85223b83f3655e5e21ad16639da406e5cd3e
2021-03-02 11:02:15 -08:00
Vladislav Sytchenko 8c4cf8c1b0 SWDEV-232428 - Fix typo from 738fd1d
Change-Id: Iec1f07e04ca3ae8ad72d38034bc136b59eb89dfe
2021-03-02 12:34:38 -05:00
Tao Sang c1c5c89cd0 SWDEV-270973 - Add missing copyright headers
Change-Id: I6bb17650f74371dae6e29c59fd6bb2022cc062fe
2021-03-02 12:01:54 -05:00
kjayapra-amd a7abe44436 SWDEV-270013 - Assign Kern_args segment only for gfx90a.
Change-Id: Icc890041eb27800cb78ef9e3d7bbe02658f53821
2021-03-02 11:07:37 -05:00
German Andryeyev 24299e25bd SWDEV-272496 - Fix multiple timing issues
- Don't notify if the batch is empty, because that means
the current command was processed already.
- Disable pinning optimization to avoid a race condition on stall.
- TS marker submition requires extra AQL barrier
to track the status.

Change-Id: I17eff4ad12ac66cfe1bb44048bebb1891805279d
2021-03-01 12:46:57 -05:00
Alex Xie 639d67866c SWDEV-272382 - [OCL][LNX] OCLMemoryInfo[1] subtest of oclruntime is failing
1. Fix the size of the memory when releasing.
2. Make sure we only count the device memory

Change-Id: Ib4dcda79f313c4ee9cc1c7bab53f8076bce5f583
2021-02-28 16:00:51 -05:00
Vladislav Sytchenko 4e1232a110 SWDEV-193973 - Enable HSAIL for all Navi Asics
Change-Id: I0a48442f9a970de3d449e512293bc4600c62db13
2021-02-26 11:56:09 -05:00
Vladislav Sytchenko 9e8a2f3266 SWDEV-86035 - [PAL] Correct allocation logging
Since the allocation can be a suballocation, we should print both the
VA range for the allocation and the underlying memory object.

Change-Id: Ic9c707bbb78113b366d1b2c688e6fd33bdc8fd94
2021-02-24 11:35:49 -05:00
kjayapra-amd 46a50965c4 SWDEV-274058 - Porting HIP, ROCclr gfx90a changes to mainline.
Change-Id: I4f4220df77e57f749a00c1dbb66743ac5af4959a
2021-02-24 09:55:54 -05:00
Jason Tang 54a7170e40 SWDEV-198364 - Only enable clgl sharing in ROCm path when building LinuxPro
Change-Id: Ie4d87e252519d090a62b930f7ebb315d3477b690
2021-02-23 14:15:04 -05:00
Vladislav Sytchenko c93f66a5ec SWDEV-270013 - Fix uninitialized variable warning
Change-Id: Ic4c8090e94e82798c294ac4532ca20efbc5a3a54
2021-02-23 11:49:28 -05:00
Vladislav Sytchenko dbcf023cb1 SWDEV-86035 - [PAL] Propagate gl2Uncached setting to the backend
Change-Id: I594f304a20d448fe198ec27901e6c97b265c1183
2021-02-21 13:52:38 -05:00
Vladislav Sytchenko 263173914f SWDEV-86035 - [PAL] Fix runtime init
The settings need to be populated ASAP, otherwise the dummy context is
not created properly.

Change-Id: Iede0066308bb601dc68164e894775a646a0372f1
2021-02-20 16:39:13 -05:00
German Andryeyev ac387f9b03 SWDEV-272496 - Wait on CPU before switching to GPU wait
GPU waits have noticeable overheads on compute with extra
AQL barrier packet and on SDMA with power saving features. This
change introduces a wait on CPU for 30 us in case the app has tiny
operations.

Change-Id: I761ba3af595f3f48544980058a9077dda15aa5f9
2021-02-17 15:19:17 -05:00
Vladislav Sytchenko 671778bdd3 SWDEV-232428 - Push hostcall implementation to the device layer
This change unifies the hostcall implementation for all the backends,
by pushing the common logic to the device layer. This is done by
replacing the use of hsa_signal_t with device::Signal (a light wrapper
around it).

Change-Id: I7b6fca7930b5a0b199da5d85e2e048354cc04e7b
2021-02-16 17:19:57 -05:00
Jason Tang c65be06c4c SWDEV-265304 - Disable GFX8 in LinuxPro ROCr build
Change-Id: Ia26bb025a133a4acb255a539a45668975019cc6e
2021-02-16 13:32:47 -05:00
Vladislav Sytchenko ac237ac094 SWDEV-271486 - [PAL] Temporarily disable reporting sramecc support
Change-Id: I089af8f8a4645ce5353f351dbf3a018cd31df216
2021-02-16 10:39:18 -05:00
Vladislav Sytchenko 660e543f49 SWDEV-270013 - Fix Windows build
Change-Id: I9573ef8b9d94367b8fa1dd90d40a93ddc4992f18
2021-02-16 10:03:51 -05:00
Ravi C Akkenapally 0a5f9a3b10 SWDEV-179105 - Stream Operations: Add support for Wait and Write
Change-Id: Ibffa1d6d573826b64763da280074a77271d66808
2021-02-15 17:02:38 -08:00
kjayapra-amd 2df099df9e SWDEV-270013 - Allocate kernel_arguments from kern_arg & finegrain pool instead of coarse grain.
Change-Id: Id4c6977934fdd6ef2311f6e75593801f1e51983c
2021-02-15 18:20:08 -05:00
German Andryeyev 70f06c79fa SWDEV-86035 - switch PAL interface to 656 version
Change-Id: I162ba6e49aa866c013f37a114df5bb7ea3e08874
2021-02-12 13:08:59 -05:00
German Andryeyev e7c636c5e7 SWDEV-86035 - Enable PAL for gfx8
Change-Id: Ia6623993e44aeb4bdf317628ee8a84af6c4cacc7
2021-02-11 14:25:43 -05:00
Payam a2e0b0495c SWDEV-257937 - Updated fix for ROC_BARRIER_SYNC=0
Change-Id: I7e28e541b654db57fb0890d7dbb7519cfb2d93db
2021-02-11 14:01:45 -05:00