-
Notifications
You must be signed in to change notification settings - Fork 30
HSA
Use mainline to switch between kernels.
The most recent kernel I've gotten to work as of 08/29/24 is 6.8.8.
Get amdgpu-install
from here. Install it (which just adds repositories) and then
Install amdgpu-dkms
following here but only do
sudo apt update && sudo install amdgpu-dkms
If it worked then you should be able to do
svcnod@sharkbox1:~$ cat /sys/devices/virtual/kfd/kfd/topology/nodes/0/properties
and
svcnod@sharkbox1:~$ cat /sys/devices/virtual/kfd/kfd/topology/nodes/1/properties
If you're having trouble installing because it doesn't compile/isn't compatible with some kernel version then just uninstall the headers for that kernel.
DON'T FORGET TO sudo usermod -a -G render,video $LOGNAME
for whichever user needs to have access to the kfd
.
If you see
rocr::core::Shared<T, rocr::core::PageAllocator<T> >::Shared(int, int) [with T = rocr::core::SharedQueue]: Assertion `allocate_ != nullptr && free_ != nullptr && "Shared object allocator is not set"' failed.
then you either forgot to do the usermod
above or it hasn't stuck yet - just reboot.
The right branch of ROCT-Thunk-Interface
is rocm-6.2.x
, i.e., https://github.com/ROCm/ROCT-Thunk-Interface/tree/rocm-6.2.x .
https://github.com/nod-ai/ROCR-Runtime
To build from source you're going to need clang-19
(well currently that's what I've patched/hacked in). Easiest way to get it is using https://apt.llvm.org:
wget https://apt.llvm.org/llvm.sh
chmod +x llvm.sh
sudo ./llvm.sh 19
sudo apt install libclang-19-dev libllvmlibc-19-dev
The above might not be enough (just install stuff until it works and then come back here and tell us).