Commit Graph

130 Commits

Author SHA1 Message Date
kjayapra-amd 788ae8595b SWDEV-295144 - Change uint64_t to size_t to fix failure on 32-bit opencl.
Change-Id: I5c28e9c606dec1c956f3f48071d8a0271adfff22
2021-08-22 23:56:08 -07:00
anusha GodavarthySurya 682151f39d SWDEV-295251 - Avoid marker if queue is empty for DD to fix MT issue
Change-Id: I80be39ace9d93347f81ef8acd7858d43bc4a3f1e
2021-08-22 23:56:08 -07:00
Vladislav Sytchenko de53cd1903 SWDEV-240806 - Fix Windows build
Fixes error "All control paths should return a value".

Change-Id: I4718688b55b24862465e15ea0d64b32fa44b3299
2021-08-22 23:56:08 -07:00
anusha GodavarthySurya 050d54b503 SWDEV-240806 - Add methods to update kernel command parameters
Change-Id: Iba90a31f9c5d6d4f2b60b7ccf903325c03d4d245
2021-08-22 23:56:08 -07:00
anusha GodavarthySurya de5168fdef SWDEV-295251 - Remove waitEvent check in append
Change-Id: I994f3e7c67ed29c4ee46229c8bcd1448fc7f59ec
2021-08-22 23:56:08 -07:00
Satyanvesh Dittakavi 924695fb5e SWDEV-292021 - Fix Device Reset
- Device Reset should not purge the allocations that were not by the user
- Addresses QMCPack Test abort due to the removal of all the mem objects during reset

Change-Id: I7b7a123e72bcc985d7e51d17c2382bc618d3e041
2021-08-22 23:56:08 -07:00
Sourabh Betigeri 8c5c2befeb SWDEV-292523 - [vdi]Change in the signature of streamOperations APIs, particularly 'value' arg to unsigned 'value
Change-Id: I74b24b2dec911acd5e7a364ea8c050c2ecb1c3b8
2021-08-22 23:56:08 -07:00
Vladislav Sytchenko 74ccf71d53 SWDEV-294514 - Limit HIP-GL interop logic to HIP
Below logic is causing a crash in the CL-GL interop. As a workaround,
limit it only to HIP.

Change-Id: I12e81d035ebd80a4a9a09eb6eea2fae7040d90c9
2021-08-22 23:56:08 -07:00
German Andryeyev c144383971 SWDEV-290384 - Disable HSA callback for any host wait
Change-Id: Ie876deb62859f5551f4ed69eb8187ac3fa35f42a
2021-08-22 23:56:08 -07:00
German Andryeyev ff15c0893e SWDEV-292018 - Switch to internal signals for markers
Add ref counting to ProfilingSignal class to track the last release.
If a signal was used in the marker, then don't reuse it,
but create a new one for internal usage.
Don't rely on HSA callback for the command status update if there
are no pending dispatches.

Change-Id: I19f14ed9d80acfe79993b343b2187635f8428a20
2021-08-22 23:56:07 -07:00
kjayapra-amd e01a24d8b5 SWDEV-295144 - Typecast arena mem ptr(0x2) to void*, otherwise results in wrong constructor overload.
Change-Id: I433b70dc70377ae0c5f9b29818703e1ac9d95053
2021-08-22 23:56:07 -07:00
German Andryeyev f34c1b9ff8 SWDEV-292820 - Add a new notify lock
HSA signal calback may occur during the actual marker submit. That
may cause a deadlock, because shared lock_ object. Create the new
notify_lock_ field to protect the notification.

Change-Id: I9752af84e59895530620fac3932c6fc276de8658
2021-08-22 23:56:07 -07:00
agunashe d96481fb36 SWDEV-293742 - Update copyright end year VDI repo
Change-Id: I69d2fea4a7a43adf96ccea794270e4af991c5261
2021-08-22 23:56:07 -07:00
German Andryeyev 6ab8dcc682 SWDEV-292018 - Avoid marker if queue is empty
Change-Id: I40a42d67d2c911d2c9a0bf425f36bc795f9539c0
2021-08-22 23:56:07 -07:00
German Andryeyev ce8dad2ecc SWDEV-290160 - Switch to global HSA signals
Runtime can't assign internal HSA signals for HIP events, because
HIP application can destroy the HIP stream or signal reuse may
occur internally. Switch to global HSA signals for HIP events.

Change-Id: Ieaea2d6b039e492b2e7c5112782a8f4e601e50a1
2021-08-22 23:56:07 -07:00
Saleel Kudchadker 8e08880cc3 SWDEV-247372 - Add logging for debug
Change-Id: Id5a27034005a7deba37072d8a4c6f250104a96c8
2021-08-22 23:56:07 -07:00
Christophe Paquot 133287f31f SWDEV-240806 - Release resources in Command::terminate for HIP
We do not want to release resources during setStatus in HIP because of Graphs

Change-Id: Idc7b188ab5f8be6975ea91005dd2bbf177401f8c
2021-08-22 23:56:07 -07:00
German Andryeyev c49f1069ab SWDEV-290160 - Don't send notification for batch markers
Batch marker already has a barrier with HSA signal callback

Change-Id: I69fc63d72320c2e9cc2d2e59ebd3f07c0bd0e3b5
2021-08-22 23:56:07 -07:00
German Andryeyev 85c70a7495 SWDEV-284671 - Add HW event wait to improve hipDeviceSynchronize
If AMD event contains a reference to a HW event, then runtime
could check/wait for HW event. CPU status update will occur later
after HSA signal callback, but it's not important for the result.

Change-Id: I591391a953bbdba6a25ac07e2cd98aeb17cd4596
2021-08-22 23:56:07 -07:00
Saleel Kudchadker 9d0846e732 SWDEV-286092 - Enable handler for marker always
For DD, send a NOP packet so that we leverage the handler to indicate
completion.

Change-Id: Ie57ea0124a8497d39cc49da1c4575c2cd86b9319
2021-08-22 23:56:07 -07:00
German Andryeyev fa2e154a8b SWDEV-278894 - Use GPU waits for HIP events
Save HW events in amd::Event.
Use HW events for synchronization

Change-Id: I98cf9c2d0ec3c7fcaf254b749ac6c568d7270ae0
2021-05-25 13:41:15 -04:00
German Andryeyev a81756bba3 SWDEV-285318 - Wait for the queue before destruction
With direct dispatch enabled make sure the queue is done before
destruction.

Change-Id: Ib80af3efb97dfb93e2dce60a11db34fb5c45f5cd
2021-05-20 10:28:24 -04:00
Ravi C Akkenapally 0aa524363d SWDEV-245531 - GLInterop: Add Buffer Interop support
Change-Id: I38326173475e84f8eca2605522542ef89a3cf524
2021-05-19 12:24:24 -07:00
kjayapra-amd 1c49d8816c SWDEV-286346 - Implement Arena Memory Object for externally created memory.
Change-Id: I8530602d89edf83ad367c52167e48a1559ee1e18
2021-05-18 10:59:52 -04:00
Jason Tang f2a077f62f SWDEV-277566 - Only build kernelNames_ when requested.
Currently only clGetProgramInfo/CL_PROGRAM_KERNEL_NAMES requests it.

Change-Id: I38be16999ac2f631850fb5e07eeae54bfbe161ad
2021-05-13 15:07:50 -04:00
Jason Tang 211ba25b4e SWDEV-277566 - Separate code object loading from building
Change-Id: I87b8178f55e8ef23762dfe11fab71665ba680f00
2021-05-13 08:41:35 -04:00
Jason Tang b2116c2137 SWDEV-277566 - Add amd::Program::load interface
Skeleton implementation to allow change at HIP and OpenCL.

Change-Id: I70e69d33c6870cc96238b2f18010ace86d56147f
2021-05-07 17:07:15 -04:00
Vladislav Sytchenko 7034e749e3 SWDEV-273235 - Allow explicitly disabling LF support
Currently LiquidFlash cannot be supported from Github Enterprise,
hence we need to be able to build with out it.

Allow this by setting -DWITH_LIQUID_FLASH=0.

Change-Id: I975e8ee16b7ba033e3eb95fe40955d8c1d4779b7
2021-05-05 14:32:30 -04:00
Vladislav Sytchenko 7fd1e9c10a SWDEV-280473 - Remove dependancy on internal ACL API
aclutGetTargetInfo() is an internal compiler lib helper functions. This
will not be imported in the HSAIL shared library build, however it is
simple enough that we can maintain our own local copy of it.

Change-Id: I91d1a336c7da027bf8a7df8fae86a25add533611
2021-05-05 12:19:52 -04:00
pghafari 582d12b32f SWDEV-245532 - HIP - Vulkan interop semaphores
Change-Id: Ib79328ce4ec2f8ac3aade59fde4fd30e2d6e5cba
2021-04-26 13:20:58 -04:00
Anusha GodavarthySurya c9c6bed022 SWDEV-240806 - [hip-graph] Added functions updateEventWaitList and resetStatus
Change-Id: I6a753e9584bdacd39ee676466a884ec6b7859879
2021-04-20 09:43:40 -04:00
Vladislav Sytchenko c7b50bb890 SWDEV-280473 - Support HSAIL shared library build
This change makes HSAIL usage similar to that of Comgr. By default, the
runtime will statically link against it, however if HSAIL_DYN_DLL is
defined, then the runtime will try to dynamically load HSAIL.

Currently stick to statically linking to HSAIL. In a feature patch the
dynamic loading behaviour will be enabled.

Change-Id: I6a78a4375975cf847f236b200404c8cf941d012b
2021-04-14 12:25:54 -04:00
Saleel Kudchadker 9307ab43e4 SWDEV-278336 - Print time info only when profiling
Change-Id: Ic8d04e58cf4558fbfc5ed6db35f3ff2d788803f9
2021-04-09 13:17:31 -04:00
pghafari 6e888b15ff SWDEV-245532 - HIP - Vulkan interop
Change-Id: I0e5bc4862925f344b3fcadf1fa0c0acaeaae6c4d
2021-03-23 23:40:17 -04:00
Sarbojit Sarkar 16fcf72c42 SWDEV-271539 - fix for hipMemcpy3D segfault
Change-Id: I9c76dfaa19fb3a848623ddf3297a6c8a38f7c494
2021-03-18 00:20:52 -04:00
Satyanvesh Dittakavi a711a49881 SWDEV-264244 - Hide Notifications from HIP
This fixes hipStreamQuery returning hipErrorNotReady when idle
Change-Id: I3f77666a00bc6a7162b6c660d79e76c09669d94f
2021-03-16 06:30:55 -04: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
Sarbojit Sarkar fa89ee5ee0 SWDEV-254329 - Init Profiling when ON
Change-Id: I72f9da94f8fbb95e66cf145831b252af05a19dc4
2021-03-04 23:35:27 -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
Sarbojit Sarkar 14d54a7b29 SWDEV-254329 - Fix for profiler ON/OFF
Change-Id: Iea72ae96ebe7ed95322dfc39d785ac326b47f6dc
2021-03-02 02:16:14 -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
German Andryeyev a9b0e20d26 SWDEV-272496 - Fix a regression in PAL
Skip notification for markers with direct dispatch only,
since they are blocking always

Change-Id: I6bb17650f73371dae6e29c59fd6bb2012cc062fd
2021-02-25 11:11:42 -05:00
Vladislav Sytchenko 184b2631d5 SWDEV-271964 - Revert "SWDEV-264244 Fix StreamSync"
This reverts commit a148a71075.

Change-Id: I870c8b71edeb31f587fffe2447762acba61a7938
2021-02-24 11:43:08 -05:00
German Andryeyev 0587fb7450 SWDEV-272496 - Disable notification for the previous notify
Direct disaptch doesn't insert extra barriers for Markers if
AQL barrier was the last issued command already.

Change-Id: I00fbc658547d83dd3ee64ec391ed50e5f8a08e30
2021-02-23 17:04:59 -05:00
Jason Tang 0d47b06928 SWDEV-1 - Fix warnings when building with clang++
Change-Id: Idebd2b618b9a3360147984a0e33852dbe2e65818
2021-02-18 10:02:46 -05:00
Jason Tang c65be06c4c SWDEV-265304 - Disable GFX8 in LinuxPro ROCr build
Change-Id: Ia26bb025a133a4acb255a539a45668975019cc6e
2021-02-16 13:32:47 -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
Saleel Kudchadker 0f14c54c04 SWDEV-272673 - Add changes to dump log to a file
Env var AMD_LOG_LEVEL_FILE would dump the log to file.
Change-Id: I6add4a1ae6788f376ce116797cc0573007502e73
2021-02-15 10:28:06 -08:00
cjatin 5cfea2981b SWDEV-252745 - Adding precompiled headers to build option
Change-Id: Iab03e8a75215d80c91817ee0227d034fefa9dfad
2021-02-09 23:33:55 -05:00