Commit Graph

153 Commits

Author SHA1 Message Date
Ioannis Assiouras 75104df3b2 SWDEV-464648 - code and comment cleanups
Change-Id: I5ba3f1bff500b3cd5903c2f441017735e688f83f


[ROCm/clr commit: 8f42ad6aa3]
2024-06-07 22:38:09 +01:00
Ioannis Assiouras 407d1346f2 SWDEV-463865 - changed device,roc and pal namespaces to be nested under amd
Change-Id: Icad342843c039c634e249a13a7aa31400730b1dd


[ROCm/clr commit: 775dc204aa]
2024-06-07 12:23:06 -04:00
Ajay 5b731168ca SWDEV-439581 - hip event flags clean up
Change-Id: I2197762d912da41a8b53b32b3446f0a958c988a6


[ROCm/clr commit: 6ec5074d74]
2024-05-28 06:31:10 +00:00
Ajay cea4f4290a SWDEV-439581 - hipEventBlockingSync flag for hip events
Change-Id: I0d7785a568f8007f82f999776a7ad23d0acc81b7


[ROCm/clr commit: a5a4b78606]
2024-05-28 06:31:10 +00:00
Jaydeep Patel ab70925687 SWDEV-456279 - Adding new hip flag to access contiguous memory and pass the flag to HSA API.
Change-Id: I1bafeaa3096395c729723af958d609bc41e7845c


[ROCm/clr commit: 1d48f2a1ab]
2024-04-30 05:25:38 -04:00
Ioannis Assiouras 2f430138c5 SWDEV-451594 - Implement Readback and Avoid HDP Flush workaround for device kernel args
Change-Id: I6d41a089a17f55306e7ff402588a1e831b20a7a7


[ROCm/clr commit: bf74ef4025]
2024-04-19 09:29:20 -04:00
kjayapra-amd 71aa6ff3a0 SWDEV-413997 - VMM IPC implementation for Linux.
Change-Id: Icfeb83ca51e96be35abb67a94d6e3e1a1ca5a934


[ROCm/clr commit: 56ebf5157a]
2024-04-18 11:28:13 -04:00
kjayapra-amd 765e6f5d2f SWDEV-413997 - Fixing multiple device cases.
Change-Id: I10ad3fbfca887e92cd81f68392fa1acf753cbd2b


[ROCm/clr commit: d52d16c8e6]
2024-04-13 06:14:03 -04:00
German Andryeyev f29d608ca3 SWDEV-455254 - Add kernel arg optimization
Add kernel arguments optimization into blit path.
Enabled by default on MI300.

Change-Id: I2694a81b90d48ad07d86dfe4c0c64fe187bada8e


[ROCm/clr commit: f0c7ecf617]
2024-04-10 18:08:37 -04:00
Ioannis Assiouras 80ddb8e4eb SWDEV-446399 - Fixed segfault in hipMemSetAccess
Change-Id: Ia1200d9bee03e8abade211287505f081e635ceec


[ROCm/clr commit: 1f6d416684]
2024-02-20 18:51:05 -05:00
kjayapra-amd bef39a9369 SWDEV-437832 - Changes to update host unified memory and iommuv2 flags.
Change-Id: I88998cf57c21fc446fa28e250f826c607923670b


[ROCm/clr commit: 7d5b4a8f7a]
2024-02-07 06:27:47 -05:00
kjayapra-amd 9bff044c87 SWDEV-437832 - Adding device property to check if the device is accelerator.
Change-Id: I8349e99c03422c268bbb60a8c143bd492d9cec09


[ROCm/clr commit: b366a7c992]
2024-02-05 05:08:11 +00:00
Saleel Kudchadker 34fd1b7fe5 SWDEV-301667 - Remove resetFenceDirty
Dont track the status of fence_dirty_ flag on the host, instead clear it
when we submit a barrier on the respective stream.

Change-Id: I4d98dbf20c81379c9c5da9f5b67629a8f9f6dfcd


[ROCm/clr commit: 0b0df605d4]
2024-01-15 15:43:14 -05:00
Jaydeep Patel 7933b88d7c SWDEV-431879 - Introduce IsHandlerPending back.
It seems that due to removal of vdev()->isHandlerPending(),
Marker queued to ensure finish is not enqueued and that cause
hung at waiting event for kernel enqueue command.

Change-Id: I364abb2dcb4897b11a7eb61b5d85013b69292792


[ROCm/clr commit: eecbc2e436]
2023-11-23 08:45:19 -05:00
Saleel Kudchadker 5f009b7cb1 SWDEV-422207 - Track commands for capture
- Track all captured commands under a new AccumulateCommand
- Add begin() and end() methods to capture commands
- Explicit TS object now passed to certain methods because
profilingBegin() and profilingEnd() now happen separately and thus can
run into threading issues

Change-Id: I171106bdcad72b057836cb2f3fc398db3533119f


[ROCm/clr commit: 40f41f4d0b]
2023-11-03 05:09:04 +00:00
Saleel Kudchadker 1d4bd084b8 SWDEV-301667 - Cleanup unused paths
- Refactor code and cleanup logic for callback saving for event records

Change-Id: I5c56aa8e9c968a5bca70fb07ad1796da318e9e89


[ROCm/clr commit: 1338ff37e8]
2023-11-02 11:43:41 -04:00
Anusha GodavarthySurya d0b8c99103 SWDEV-422207 - Handle nonkernel nodes for graph opt
- Support graph with different types of nodes with single
branch when DEBUG_CLR_GRAPH_PACKET_CAPTURE flag is enabled

Change-Id: I149a8629769cd0d5849ffefb04f1352668a685b6


[ROCm/clr commit: 38d2c56784]
2023-10-24 18:36:06 +00:00
German 648bfdc5cd SWDEV-427689 - Report LUID in Windows
Pass LUID infromation from PAL to HIP device properties.
NodeMask is calculated based on the order of devices in PAL

Change-Id: Ic53707b68b16f392e5284a0105bf1f3941b46653


[ROCm/clr commit: 694fe4bedb]
2023-10-18 15:07:39 -04:00
kjayapra-amd 6d8458ba5a SWDEV-413997 - Initial VMM changes for ROCm path.
Change-Id: I4405fd7b53182eb4c4622835c811c0dc08461537


[ROCm/clr commit: 3ef829939a]
2023-10-16 11:29:16 -04:00
Jatin Chaudhary 15b062b9b4 SWDEV-306642 - [ABI Break] Add texture/surface/device capabilities device struct entries
- alias hipGetDeviceProperties to hipGetDevicePropertiesR0600
- alias hipDeviceProp_t to hipDeviceProp_tR0600
- remove gcnArch from new device property struct
- add new requested struct members

Change-Id: If3f5dbef3d608487d9f6f419285f4bf577ea9bf0


[ROCm/clr commit: 2989840511]
2023-10-12 11:16:18 -04:00
kjayapra-amd 96580585c3 SWDEV-419688 - Do not run GWS init kernel for targets > gfx12 and MI300.
Change-Id: I8e7441268978be71ab8a5a33e7f8bcf69660e500
(cherry picked from commit 36d37ef614909c0f215512aac0c133408d787080)


[ROCm/clr commit: 6a8bc3c718]
2023-10-05 14:57:56 -04:00
Anusha GodavarthySurya 0404df28ef SWDEV-422207 - Capture AQL Packets for graph Kernel nodes during graph Inst. And enqueue AQL packet during launch
Change-Id: I1e5f7f9e2a70bd500d190193cb6ba0867f5a63e7


[ROCm/clr commit: e63c280d4d]
2023-10-05 00:34:29 -04:00
German 3f4bbcfdba SWDEV-407533 - [ABI Break]Purge unused env vars
Change-Id: I627950e8ebb6299affc602754a20d442dbe42b14


[ROCm/clr commit: 077311153a]
2023-08-24 14:11:40 -04:00
German c8e65415ea SWDEV-311270 - Clean-up IPC path in ROCclr
- Make IPC interfaces generic between devices and rely on the IPC buffer
for attach/detach logic

Change-Id: Id3c18d122030329b7ee532bbb6317de9dd6a0bbe


[ROCm/clr commit: 9aa6f25f1c]
2023-06-20 15:18:21 -04:00
pghafari 0ddd82a5f7 SWDEV-367145 - adding support for timeline semaphore
Change-Id: I654359b48abe8bbaac2def5118d3ad0bb05d9492


[ROCm/clr commit: afa15ddb89]
2023-04-25 10:02:43 -04:00
Saleel Kudchadker 8ae30e036d SWDEV-384557 - Fix engine status query
- Maintain a map of SDMA engine# to stream allocated following a greedy
approach
- Anything past that will query SDMA engine status always and go with a
SDMA or Blit copy path

Change-Id: Ibfaed7f951ab84d80cb0430596a4d11b5aec9202


[ROCm/clr commit: 5865c642d4]
2023-04-21 00:57:26 -04:00
Saleel Kudchadker 858e311f34 SWDEV-364604 - Add ROCclr support for hipEventDisableSystemFence
Change-Id: I6127b432a8759359359a1890fda85bc401be6a56


[ROCm/clr commit: 3e603d986a]
2023-02-21 19:07:35 -05:00
Anusha GodavarthySurya 06ffd15060 SWDEV-366636 - Fix performance drop in TF-RCCL models
Change-Id: Idc845bb0dab858b94b9d2720cae8308cac2e7328


[ROCm/clr commit: f98dcf9d7f]
2023-02-17 00:48:13 -05:00
Maneesh Gupta d7fdd9fcb8 SWDEV-368235 - Revert "Remove obsolete env variables"
This reverts commit dfa7790030.

Reason for revert: Deferred to a future release.

Change-Id: Ia66c37f0ab9734dee73c930d10d7469d5fd57254


[ROCm/clr commit: 5dc104b3ea]
2023-02-15 07:25:00 +00:00
German dfa7790030 SWDEV-368235 - Remove obsolete env variables
Change-Id: I7e14d53297e79e2f68b3a6cc40251ad7db9eb5ab


[ROCm/clr commit: 7b50c935f8]
2023-02-03 13:44:24 -05:00
German 6eec7a361e SWDEV-377991 - Remove liquidflash support
Remove amdgpu-pro interface for persistent memory,
used in Liquidflash

Change-Id: I7d1720ad0875a62ebb2d7f96cba39601d560a5df


[ROCm/clr commit: 6dad2fc306]
2023-01-23 10:40:57 -05:00
German b5b078e036 SWDEV-377991 - Remove liquidflash support
Change-Id: Iba6455e5c0210c3223a06fec332404cd9f489154


[ROCm/clr commit: 53a10c9039]
2023-01-20 09:57:06 -05:00
Anusha GodavarthySurya 6ae2298d06 SWDEV-373173 - Correct max VGPRs and VGPR Granularity in Occupancy calculation for different asics
Change-Id: I6f595428ed31733cdc04e65e7c3e383f454ab72b


[ROCm/clr commit: 2b50636809]
2023-01-18 00:22:02 -05:00
German Andryeyev 8ad3120e25 SWDEV-355281 - Add offset calculation
Calculate memory location offset for requested memory

Change-Id: I7919523df1790d9eaad5827ee5bd98e4263a7554


[ROCm/clr commit: 5d83345c20]
2023-01-16 14:19:40 -05:00
Anusha GodavarthySurya 379781ea65 SWDEV-364576 - initialize device malloc heap state using blit kernel
Change-Id: I5d0172aff7d2c04b322a4d828b8a2b438158b80f


[ROCm/clr commit: 274f2de391]
2023-01-07 06:53:53 +00:00
Sourabh Betigeri 7aa958a8f7 SWDEV-305894 - Cooperative groups grid and multi grid sync support for gfx940+
Change-Id: I35d72f1cb50c3a96eee56a612b72d641852b145f


[ROCm/clr commit: 5d7f3f9f3c]
2022-12-05 16:30:30 -05:00
German e7d9a3f450 SWDEV-368308 - Remove HW debug extension
Change-Id: If0c68023c09f0dac9111d52ecc0ad63719aa4e70


[ROCm/clr commit: e5a36ab1ad]
2022-11-18 10:29:44 -05:00
Julia Jiang a83594277d SWDEV-360748 - Update return value for hipExtGetLinkTypeAndHopCount_Positive_Basic test on Windows
Change-Id: I0eb984da6e96c2409e1b1bbda61ae694c8bebe94


[ROCm/clr commit: 9d616ad0f4]
2022-11-07 10:00:32 -05:00
Tao Sang 326049efb8 SWDEV-360706 - Fix WriteAqlArgAt() crash in X86
In X86 on Windows, sizeof(size_t)=4, but size=8, for
amd::KernelParameterDescriptor::HiddenGlobalOffsetX/Y/Z items.
Loose the condition to prevent crash.

Change-Id: I2216f71f4d4fd6dd3766023b1c821cb3d35d7848


[ROCm/clr commit: 3d281114fb]
2022-10-20 18:04:49 -04:00
Laurent Morichetti 860e33dbed SWDEV-362046 - Report HIP_OPS activities using the ROCr driver_node_id instead of the device's index
The ROCclr assigns zero-based IDs to GPUs in the order they are
discovered. That zero-based ID is what is used to identify the GPU
on which the HIP_OPS activity took place.

When multiple ranks are used, each rank's first logical device always
has GPU ID 0, regardless of which physical device is selected with
CUDA_VISIBLE_DEVICES. Because of this, when merging trace files from
multiple ranks, GPU IDs from different processes may overlap.

The long term solution is to use the KFD's gpu_id which is stable
across APIs and processes. Unfortunately the gpu_id is not yet exposed
by the ROCr, so for now use the driver's node id.

Change-Id: Ib78854527d600d175bb76e2df0747c33f898c615


[ROCm/clr commit: 9a82118c85]
2022-10-20 12:31:30 -04:00
Saleel Kudchadker 434df167df SWDEV-359548 - Detect fence optimization
- Use a dirty flag to determine fence optimization
- If fence is dirty submit a marker at top level to sync.

Change-Id: I53fb19b5bb05b7c7b37c41637a6c7aaf870b639a


[ROCm/clr commit: 6405b6cdba]
2022-10-10 14:15:16 -04:00
Saleel Kudchadker 0dd9add8e1 SWDEV-352001 - Store last scopes for dispatch
- Store last fence scopes and use the last value to determine if we need a cache flush again. This helps cases where hipExtLaunchKernel API is
used.
- Purge code for ROC_EVENT_NO_FLUSH

Change-Id: I531cf9c9c60d5e2b3a9e265d0f52f79ed2fa8a8c


[ROCm/clr commit: 9b5cbd37a2]
2022-09-22 11:34:10 -04:00
Laurent Morichetti 0cd3ec5056 SWDEV-351980 - Consolidate registration tables in the roctracer library
Remove the activity_prof::CallbacksTable. The table was redundant with
the information already stored in the roctracer library. Instead use a
single callback into the roctracer library to query whether the activity
is enabled, and to report it.

Change-Id: I2e05b0881bb4a1953c14361d00ea310d02eb6e0c


[ROCm/clr commit: 52eb28930a]
2022-09-21 05:54:09 -04:00
Sarbojit Sarkar a70f836779 SWDEV-344210 - Fixed page fault when mempool accessed from remote device
Change-Id: Ie41b0c0499f7733d4541ccd50b3d0d976c6431c9


[ROCm/clr commit: a28b22d9b4]
2022-08-09 23:26:27 -04:00
Sarbojit Sarkar a0981a092b SWDEV-343921 - added Max stack size
Change-Id: I5c1a088e05215ca951afc9d92f8d298c5e3a65f1


[ROCm/clr commit: 27a08a132f]
2022-08-02 07:13:18 -04:00
sdashmiz 3389e6077a SWDEV-334233 - add support for p2p in windows
Signed-off-by: sdashmiz <shadi.dashmiz@amd.com>
Change-Id: I9109120b5444c400e65cfff869cb36e876ffd1fc


[ROCm/clr commit: e176e27bf7]
2022-07-14 15:07:33 -04:00
Tao Sang 664578080a SWDEV-286739 - Support hipDeviceAttributeWallClockRate
Part 1: Query constant frequence of wall clock from RocR

Change-Id: I52cbba6d67d11cde6d019c5ab530059f426a9bf2


[ROCm/clr commit: 1e26165cd0]
2022-07-12 17:53:11 -04:00
Christophe Paquot 65c8c0a722 SWDEV-322620 - Virtual Memory Management
Expose VM granularity

Change-Id: Ia6af99843ca957f1139fd369e46e09a6c346da46


[ROCm/clr commit: 4aecc29bf0]
2022-06-27 13:07:43 -07:00
Saleel Kudchadker b3ad41f6e4 SWDEV-335780 - Indicate if handler is queued
Maintain status of handler callback. For event records we no longer
submit callbacks to reduce the load on the async handler thread. However
without a callback we leak command memory/decrement refcounts. Indicate
status of the handler which we can use to queue a callback when
finish is called.

Change-Id: I89fd02f3d047a0e8162664ee17581a14795f1928


[ROCm/clr commit: 5df34a2f7a]
2022-06-14 20:55:06 -04:00
German Andryeyev acf2856677 SWDEV-339296 - Delay hidden heap allocation till the usage
Move hidden heap creation to the kernel launch to make sure it's
allocated on the actual first usage.

Change-Id: I1b65a82fc06d9129ed45a69765bf14ea3d945b04


[ROCm/clr commit: 4975f69337]
2022-06-14 12:18:34 -04:00