Flora Cui
887056d64a
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
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
tiancyin
575e25b7e4
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
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
tiancyin
3e40beb68c
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
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
593e919bcd
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
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
557f888e1c
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
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
602ed1aff8
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
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
a53f1a7c1e
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
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
6d941db5ec
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
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
61add17468
wsl/libhsakmt: add .NodeId() in WDDMDevice
...
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
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
Longlong Yao
250d43508e
wsl/libhsakmt: reimplement GetClockCounters
...
Signed-off-by: Longlong Yao <Longlong.Yao@amd.com >
Reviewed-by: Flora Cui <flora.cui@amd.com >
Part-of: <http://10.67.69.192/wsl/rocr-runtime/-/merge_requests/80 >
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
c01d09114b
wsl/libhsakmt: correct gfx family id
...
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/54 >
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
Longlong Yao
1c4f3e86fa
libhsakmt: add support to get driver version number
...
Signed-off-by: Longlong Yao <Longlong.Yao@amd.com >
Reviewed-by: lyndonli <Lyndon.Li@amd.com >
Part-of: <http://10.67.69.192/wsl/rocr-runtime/-/merge_requests/43 >
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
Flora Cui
b3c685585e
wsl/libhsakmt: add .NodeId() in WDDMDevice
...
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
006ee57aa3
wsl/libhsakmt: add get_num_wddmdev()
...
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
Longlong Yao
7855113a9f
wsl/libhsakmt: reimplement GetClockCounters
...
Signed-off-by: Longlong Yao <Longlong.Yao@amd.com >
Reviewed-by: Flora Cui <flora.cui@amd.com >
Part-of: <http://10.67.69.192/wsl/rocr-runtime/-/merge_requests/80 >
2025-11-05 18:53:36 +08:00
tiancyin
83af0bef55
wsl/hsakmt: add more memory type info
...
Reviewed-by: Longlong Yao <Longlong.Yao@amd.com >
Reviewed-by: Flora Cui <flora.cui@amd.com >
Signed-off-by: tiancyin <tianci.yin@amd.com >
2025-11-05 18:53:36 +08:00
Horatio Zhang
aeb666c210
wsl/hsakmt: Add w7900d device id
...
Signed-off-by: Horatio Zhang <Hongkun.Zhang@amd.com >
Reviewed-by: tiancyin <tianci.yin@amd.com >
Part-of: <http://10.67.69.192/wsl/rocr-runtime/-/merge_requests/74 >
2025-11-05 18:53:36 +08:00
Chengjun Yao
872476061a
wsl/hsakmt: remove unessary struct _HsaVersionCapability
...
Signed-off-by: Chengjun Yao <Chengjun.Yao@amd.com >
Reviewed-by: Horatio Zhang <Hongkun.Zhang@amd.com >
Part-of: <http://10.67.69.192/wsl/rocr-runtime/-/merge_requests/73 >
2025-11-05 18:53:36 +08:00
Chengjun Yao
13fc35d8de
wsl/hsakmt: Configure Capability Info to Disable alloc mem in dev mem
...
Regardless of whether the HSA_ALLOCATE_QUEUE_DEV_MEM variable is set
in the environment, set the dev_mem_queue_buf_ of the region to false.
This is due to large BAR PCIe being disabled.
Signed-off-by: Chengjun Yao <Chengjun.Yao@amd.com >
Reviewed-by: Horatio Zhang <Hongkun.Zhang@amd.com >
Part-of: <http://10.67.69.192/wsl/rocr-runtime/-/merge_requests/71 >
2025-11-05 18:53:36 +08:00
tiancyin
c6627102d3
libhsakmt: fix resource count in memory export
...
D3DKMTShareObjects() need resource count paramenter not the allocations count.
There is only one resource no matter how many allocations for a buffer.
Reviewed-by: Longlong Yao <Longlong.Yao@amd.com >
Signed-off-by: tiancyin <tianci.yin@amd.com >
2025-11-05 18:53:36 +08:00
Flora Cui
aff8e508df
wsl/libhsakmt: move PAGE_SIZE/SHIFT to static global var
...
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/68 >
2025-11-05 18:53:36 +08:00
Flora Cui
e98a872650
wsl/libhsakmt/openclose: Dynamically allocate static global memory
...
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/68 >
2025-11-05 18:53:36 +08:00
Flora Cui
4c60c0cf65
wsl/libhsakmt/topology: Dynamically allocate static global memory
...
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/68 >
2025-11-05 18:53:36 +08:00
Flora Cui
56553974d0
wsl/libhsakmt/memory: Dynamically allocate static global memory
...
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/68 >
2025-11-05 18:53:36 +08:00
tiancyin
95ec7d5c27
wsl/libhsakmt: remove suballocator's lock
...
Signed-off-by: tiancyin <tianci.yin@amd.com >
Reviewed-by: Flora Cui <flora.cui@amd.com >
Part-of: <http://10.67.69.192/wsl/rocr-runtime/-/merge_requests/68 >
2025-11-05 18:53:36 +08:00
Flora Cui
053ea9d2fe
wsl/libhsakmt: add more exported symbols
...
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/67 >
2025-11-05 18:53:36 +08:00