Flora Cui
7d501366cb
wsl/librocdxg: fix wgp count calc
...
Signed-off-by: Flora Cui <flora.cui@amd.com >
Reviewed-by: Longlong Yao <Longlong.Yao@amd.com >
2026-01-05 16:04:18 +08:00
Flora Cui
c33dcd2d07
wsl/libhsakmt: fix reserved local help size calc
...
Signed-off-by: Flora Cui <flora.cui@amd.com >
Reviewed-by: Longlong Yao <Longlong.Yao@amd.com >
Part-of: <http://10.67.69.192/wsl/rocr-runtime/-/merge_requests/114 >
2025-12-24 13:30:50 +08:00
Flora Cui
91df8f84da
wsl/libhsakmt: implement hsaKmtSetMemoryUserData
...
Signed-off-by: Flora Cui <flora.cui@amd.com >
Reviewed-by: Longlong Yao <Longlong.Yao@amd.com >
Part-of: <http://10.67.69.192/wsl/rocr-runtime/-/merge_requests/114 >
2025-12-24 13:30:50 +08:00
Flora Cui
4fb2ed2c5a
librocdxg: fix vgpr count
...
refer to https://github.com/ROCm/rocm-systems/pull/1807
Signed-off-by: Flora Cui <flora.cui@amd.com >
2025-12-24 13:30:45 +08:00
Longlong Yao
9bf8eb8c1e
librocdxg: correct atomic info for APU
...
Signed-off-by: Longlong Yao <Longlong.Yao@amd.com >
2025-12-24 13:26:17 +08:00
Longlong Yao
e616b3e65e
librocdxg: use shared GPU memory as vram on small APU
...
Signed-off-by: Longlong Yao <Longlong.Yao@amd.com >
Signed-off-by: Flora Cui <flora.cui@amd.com >
2025-12-24 13:23:07 +08:00
Longlong Yao
5ebe95d5b2
librocdxg: query total shared GPU memory
...
Signed-off-by: Longlong Yao <Longlong.Yao@amd.com >
2025-12-24 13:14:55 +08:00
Longlong Yao
6652313128
librocdxg: Add Strix and Strix Halo support
...
Signed-off-by: Longlong Yao <Longlong.Yao@amd.com >
2025-12-24 13:13:22 +08:00
Longlong Yao
26cf8c8298
librocdxg: add interface to query segment info
...
Signed-off-by: Longlong Yao <Longlong.Yao@amd.com >
2025-12-24 13:08:12 +08:00
yangsu13
30dcc1a977
Revert "wsl/librocdxg: Change hsaKmtQueueRingDoorbell interface"
...
Debug shows parameter count no impact on call relations, so revert this commit.
This reverts commit 5f710768aa2e68c5b06d0ece19f4268cc66f88d4.
Signed-off-by: Yang Su <Yang.Su2@amd.com >
Reviewed-by: Flora Cui <flora.cui@amd.com >
2025-12-17 13:47:30 +08:00
yangsu13
a7be322dfd
wsl/librocdxg: vmm api support for rocr on windows
...
PR:https://github.com/ROCm/rocm-systems/pull/1761/commits
Signed-off-by: Yang Su <Yang.Su2@amd.com >
Reviewed-by: Flora Cui <flora.cui@amd.com >
2025-12-15 16:08:38 +08:00
yangsu13
e55a439c13
wsl/librocdxg: Change hsaKmtQueueRingDoorbell interface
...
PR: https://github.com/ROCm/rocm-systems/pull/2068/commits/a87adf6444faf9bd841e9fdd38335aa8008b2d06
Signed-off-by: yangsu13 <Yang.Su2@amd.com >
Reviewed-by: Flora Cui <flora.cui@amd.com >
2025-12-10 14:08:35 +08:00
Horatio Zhang
5983ccefa5
librocdxg: Return DXG fd in amdgpu_device_get_fd
...
Signed-off-by: Horatio Zhang <Hongkun.Zhang@amd.com >
Reviewed-by: Flora Cui <flora.cui@amd.com >
2025-12-01 14:29:20 +08:00
Horatio Zhang
6bb933f820
librocdxg: Add drm metadata related interface
...
Signed-off-by: Horatio Zhang <Hongkun.Zhang@amd.com >
Reviewed-by: Flora Cui <flora.cui@amd.com >
2025-12-01 14:29:13 +08:00
Flora Cui
0761dd0146
librocdxg: Increase AQL frame size calculation
...
to prevent PM4 command buffer overflow
Signed-off-by: Flora Cui <flora.cui@amd.com >
Reviewed-by: Longlong Yao <Longlong.Yao@amd.com >
Part-of: <http://10.67.69.192/wsl/rocr-runtime/-/merge_requests/113 >
2025-11-28 14:53:07 +08:00
yangsu13
3c17717624
librocdxg: Remove std::call_once to fix repeated libdxcore.so loading failures
...
The use of std::call_once caused the initialization flag to be set permanently,
preventing proper re-attempts to load libdxcore.so when needed. This change removes
the once_flag mechanism and relies solely on dxcore_handle_ checks to manage library
loading, allowing proper re-initialization attempts.
Signed-off-by: yangsu13 <Yang.Su2@amd.com >
Reviewed-by: Flora Cui <flora.cui@amd.com >
2025-11-05 18:53:37 +08:00
Flora Cui
a32d71124f
librocdxg: implement stub hsaKmtAisReadWriteFile
...
Signed-off-by: Flora Cui <flora.cui@amd.com >
2025-11-05 18:53:37 +08:00
Chengjun Yao
15ff43c4ce
librocdxg: Integrate DXCore loader into WDDM thunks
...
Replace direct D3DKMT API calls with DXCORE_CALL macro in WDDM
thunk layer. This enables dynamic loading of DXCore functions
while maintaining the same API interface.
Updated thunk functions:
- MapGpuVirtualAddress, CreateAllocation, DestroyAllocation
- ReserveGpuVirtualAddress, FreeGpuVirtualAddress
- MakeResident, Evict, ShareObjects
- QueryResourceInfoFromNtHandle, OpenResourceFromNtHandle
All existing functionality is preserved while adding flexibility
for runtime DXCore availability detection.
Signed-off-by: Chengjun Yao <Chengjun.Yao@amd.com >
Signed-off-by: Yang Su <Yang.Su2@amd.com >
Reviewed-by: Shi.Leslie <Yuliang.Shi@amd.com >
2025-11-05 18:53:37 +08:00
Chengjun Yao
c8fbb93f03
librocdxg: Remove static DXCore library dependency
...
Remove static linking to libdxcore library from CMakeLists.txt.
This prepares for dynamic loading implementation and eliminates
hard dependency on DXCore being present at build time.
The DXCore functionality will be loaded dynamically at runtime
in subsequent patches, making the library more flexible for
different deployment scenarios.
Signed-off-by: Chengjun Yao <Chengjun.Yao@amd.com >
Signed-off-by: Yang Su <Yang.Su2@amd.com >
Signed-off-by: Flora Cui <flora.cui@amd.com >
Reviewed-by: Shi.Leslie <Yuliang.Shi@amd.com >
2025-11-05 18:53:37 +08:00
Flora Cui
3149006d29
librocdxg: update rocr queue type to amd_queue_v2_t
...
Signed-off-by: Flora Cui <flora.cui@amd.com >
2025-11-05 18:53:37 +08:00
Flora Cui
c5d2a0040e
librocdxg: load rocr symbols
...
Signed-off-by: Flora Cui <flora.cui@amd.com >
2025-11-05 18:53:37 +08:00
Flora Cui
45cc96aeb8
librocdxg: include rocr headers
...
Signed-off-by: Flora Cui <flora.cui@amd.com >
2025-11-05 18:53:37 +08:00
Flora Cui
3915c38957
librocdxg: rename hsakmt to rocdxg
...
Signed-off-by: Flora Cui <flora.cui@amd.com >
2025-11-05 18:53:37 +08:00
Flora Cui
c5d7d487dc
wsl/libhsakmt: adapt to the new check for kernel object
...
Signed-off-by: Flora Cui <flora.cui@amd.com >
Reviewed-by: Longlong Yao <Longlong.Yao@amd.com >
Part-of: <http://10.67.69.192/wsl/rocr-runtime/-/merge_requests/99 >
2025-11-05 18:53:37 +08:00
Flora Cui
72cbeeff6d
wsl/libhsakmt: refactor handling of kmd priv data
...
Signed-off-by: Flora Cui <flora.cui@amd.com >
Reviewed-by: Longlong Yao <Longlong.Yao@amd.com >
Part-of: <http://10.67.69.192/wsl/rocr-runtime/-/merge_requests/98 >
2025-11-05 18:53:37 +08:00
Flora Cui
c3f022822b
wsl/libhsakmt: add !atomic handling for vender specific packet
...
Signed-off-by: Flora Cui <flora.cui@amd.com >
Reviewed-by: Longlong Yao <Longlong.Yao@amd.com >q
Part-of: <http://10.67.69.192/wsl/rocr-runtime/-/merge_requests/97 >
2025-11-05 18:53:37 +08:00
Flora Cui
1217d4eae7
wsl/libhsakmt: simplify adapter_info
...
Signed-off-by: Flora Cui <flora.cui@amd.com >
Reviewed-by: Longlong Yao <Longlong.Yao@amd.com >
Part-of: <http://10.67.69.192/wsl/rocr-runtime/-/merge_requests/97 >
2025-11-05 18:53:37 +08:00
Flora Cui
15b8ce7529
wsl/libhsakmt: fix handling of HSA_OVERRIDE_GFX_VERSION option
...
Signed-off-by: Flora Cui <flora.cui@amd.com >
Reviewed-by: Horatio Zhang <Hongkun.Zhang@amd.com >
Part-of: <http://10.67.69.192/wsl/rocr-runtime/-/merge_requests/96 >
2025-11-05 18:53:37 +08:00
Flora Cui
d520b11006
wsl/libhsakmt: refactor WDDMDevice creation
...
Signed-off-by: Flora Cui <flora.cui@amd.com >
Reviewed-by: Tianci Yin <tianci.yin@amd.com >
Part-of: <http://10.67.69.192/wsl/rocr-runtime/-/merge_requests/95 >
2025-11-05 18:53:37 +08:00
Flora Cui
e0f40ae8d4
wsl/libhsakmt: refactor check for supported device
...
Signed-off-by: Flora Cui <flora.cui@amd.com >
Reviewed-by: Tianci Yin <tianci.yin@amd.com >
Part-of: <http://10.67.69.192/wsl/rocr-runtime/-/merge_requests/95 >
2025-11-05 18:53:37 +08:00
Flora Cui
b39d8a7487
wsl/libhsakmt: remove redundant #include "libhsakmt.h"
...
move libhsakmt.h inclusion to he makefile
Signed-off-by: Flora Cui <flora.cui@amd.com >
Reviewed-by: Tianci Yin <tianci.yin@amd.com >
Part-of: <http://10.67.69.192/wsl/rocr-runtime/-/merge_requests/95 >
2025-11-05 18:53:37 +08:00
Flora Cui
e41b405f53
wsl/libhsakmt: fix hsaKmtRuntimeDisable ret value
...
As ROCR exclusively accepts HSAKMT_STATUS_SUCCESS. returning any other
value is treated as an error and will trigger an exit due to failure.
Signed-off-by: Flora Cui <flora.cui@amd.com >
Reviewed-by: Tianci Yin <tianci.yin@amd.com >
Part-of: <http://10.67.69.192/wsl/rocr-runtime/-/merge_requests/95 >
2025-11-05 18:53:37 +08:00
Flora Cui
e99fcfee51
wsl/libhsakmt: remove redundant PAGE_SHIFT
...
Signed-off-by: Flora Cui <flora.cui@amd.com >
Reviewed-by: Tianci Yin <tianci.yin@amd.com >
Part-of: <http://10.67.69.192/wsl/rocr-runtime/-/merge_requests/95 >
2025-11-05 18:53:37 +08:00
Chengjun Yao
c16ea5e561
wsl/libhskmt: Remove scratch_backing_memory_byte_size
...
Signed-off-by: Chengjun Yao <Chengjun.Yao@amd.com >
Part-of: <http://10.67.69.192/wsl/rocr-runtime/-/merge_requests/93 >
2025-11-05 18:53:37 +08:00
Horatio Zhang
5c16eddc67
wsl/libhsakmt: update WIN_KMD_VERSION to 25.20
...
Signed-off-by: Horatio Zhang <Hongkun.Zhang@amd.com >
Reviewed-by: Flora Cui <flora.cui@amd.com >
Part-of: <http://10.67.69.192/wsl/rocr-runtime/-/merge_requests/92 >
2025-11-05 18:53:37 +08:00
Flora Cui
6ffd750632
wsl/libhsakmt: fix return value for hsaKmtUnmapMemoryToGPU
...
Signed-off-by: Flora Cui <flora.cui@amd.com >
Reviewed-by: Tianci Yin <tianci.yin@amd.com >
Part-of: <http://10.67.69.192/wsl/rocr-runtime/-/merge_requests/89 >
2025-11-05 18:53:37 +08:00
Flora Cui
23bc53e9a8
wsl/libhsakmt: fix abused memory flag in allocation_map_
...
Signed-off-by: Flora Cui <flora.cui@amd.com >
Reviewed-by: Tianci Yin <tianci.yin@amd.com >
Part-of: <http://10.67.69.192/wsl/rocr-runtime/-/merge_requests/89 >
2025-11-05 18:53:37 +08:00
tiancyin
ccc3849de8
wsl/libhsakmt: move IPC functions from device to thunk runtime
...
IPC use system memory, it has nothing to do with wddm device.
Reviewed-by: Flora Cui <flora.cui@amd.com >
Signed-off-by: tiancyin <tianci.yin@amd.com >
2025-11-05 18:53:37 +08:00
tiancyin
8c6a4d59d4
wsl/libhsakmt: move ReserveGpuVirtualAddress from device to thunk runtime
...
For multi-GPU supporting, local heap and system heap managers are
implemented in thunk runtime, so the heap allocation function
ReserveGpuVirtualAddress should be moved to runtime too.
Reviewed-by: Flora Cui <flora.cui@amd.com >
Signed-off-by: tiancyin <tianci.yin@amd.com >
2025-11-05 18:53:37 +08:00
tiancyin
f8d1663b39
wsl/libhsakmt: move handle aperture from device to thunk runtime
...
In multi-GPU, handle aperture is shared between all GPUs, not belongs to
specific one GPU, so move it from wddm device (which presents a specific GPU)
to thunk runtime which has gloable view, can manage handle aperture for all GPUs.
Reviewed-by: Flora Cui <flora.cui@amd.com >
Signed-off-by: tiancyin <tianci.yin@amd.com >
2025-11-05 18:53:36 +08:00
tiancyin
8e07aca2ae
wsl/libhsakmt: move system heap from device to thunk runtime
...
In multi-GPU, system heap space is shared between all GPUs, not belongs to
specific one GPU, so move it from wddm device (which presents a specific GPU)
to thunk runtime which has gloable view, can manage system heap for all GPUs.
Introduce a new va_Mgr instance to manage system heap, since local heap
and system heap both comply with SVM(Shared Virtual Memory), without
this new mgr, every allocation has to call KMD at least once (each GPU
needs a call) to allocate GPU VA, the new mgr manage the space itself,
no longer call KMD.
Reviewed-by: Flora Cui <flora.cui@amd.com >
Signed-off-by: tiancyin <tianci.yin@amd.com >
2025-11-05 18:53:36 +08:00
tiancyin
d5eb871bbb
wsl/libhsakmt: move local heap and va_Mgr from device to thunk runtime
...
In multi-GPU, local heap space is shared between all GPUs, not belongs to
specific one GPU, so move it from wddm device (which presents a specific GPU)
to thunk runtime which has gloable view, can manage local heap for all GPUs.
Reviewed-by: Flora Cui <flora.cui@amd.com >
Signed-off-by: tiancyin <tianci.yin@amd.com >
2025-11-05 18:53:36 +08:00
Flora Cui
8b6d919b4b
wsl/libhsakmt: add same process check for ipc buffer
...
Signed-off-by: Flora Cui <flora.cui@amd.com >
Reviewed-by: Tianci Yin <tianci.yin@amd.com >
Part-of: <http://10.67.69.192/wsl/rocr-runtime/-/merge_requests/85 >
2025-11-05 18:53:36 +08:00
Flora Cui
972e74e723
wsl/libhsakmt: move userptr release to hsaKmtDeregisterMemory()
...
Signed-off-by: Flora Cui <flora.cui@amd.com >
Reviewed-by: Tianci Yin <tianci.yin@amd.com >
Part-of: <http://10.67.69.192/wsl/rocr-runtime/-/merge_requests/85 >
2025-11-05 18:53:36 +08:00
Flora Cui
237377aa02
wsl/libhsakmt: refactor ipc implementation
...
Signed-off-by: Flora Cui <flora.cui@amd.com >
Reviewed-by: Tianci Yin <tianci.yin@amd.com >
Part-of: <http://10.67.69.192/wsl/rocr-runtime/-/merge_requests/85 >
2025-11-05 18:53:36 +08:00
Flora Cui
77093f8f85
wsl/libhsakmt: extract is_ipc_sysmemfd()
...
Signed-off-by: Flora Cui <flora.cui@amd.com >
Reviewed-by: Tianci Yin <tianci.yin@amd.com >
Part-of: <http://10.67.69.192/wsl/rocr-runtime/-/merge_requests/85 >
2025-11-05 18:53:36 +08:00
Flora Cui
5a89405bf8
wsl/libhsakmt: fix check for queue buffer
...
Signed-off-by: Flora Cui <flora.cui@amd.com >
Reviewed-by: Tianci Yin <tianci.yin@amd.com >
Part-of: <http://10.67.69.192/wsl/rocr-runtime/-/merge_requests/83 >
2025-11-05 18:53:36 +08:00
Flora Cui
62aee13f7b
wsl/libhsakmt: fix hsaKmtRegisterGraphicsHandleToNodesExt
...
if nodes array is nullptr
Signed-off-by: Flora Cui <flora.cui@amd.com >
Reviewed-by: Tianci Yin <tianci.yin@amd.com >
Part-of: <http://10.67.69.192/wsl/rocr-runtime/-/merge_requests/83 >
2025-11-05 18:53:36 +08:00
Flora Cui
75cbeda847
wsl/libhsakmt: fix default device in memory allocation
...
Signed-off-by: Flora Cui <flora.cui@amd.com >
Reviewed-by: Tianci Yin <tianci.yin@amd.com >
Part-of: <http://10.67.69.192/wsl/rocr-runtime/-/merge_requests/82 >
2025-11-05 18:53:36 +08:00
Flora Cui
67332944d2
wsl/libhsakmt: set default node
...
Signed-off-by: Flora Cui <flora.cui@amd.com >
Reviewed-by: Tianci Yin <tianci.yin@amd.com >
Part-of: <http://10.67.69.192/wsl/rocr-runtime/-/merge_requests/82 >
2025-11-05 18:53:36 +08:00