[Debian-pan-maintainers] Push ROCm and Pocl autopkgtest for pkg Sasmodels
LONGEAC Clement
clement.longeac at synchrotron-soleil.fr
Fri Jul 11 10:16:00 BST 2025
Hi Stuart ,
Thanks a lot for your interest, :)
>As a first step, could you put this in as a merge request on salsa so
>that we can all look at it and understand what you have achieved?
I modified the file debian/tests/control and debian/control. I modified debian/control in order to solve an error of downgrade of some dependencies: python3-sasmodels and python-sasmodels-doc
I've created a new branch and push it to the git salsa, so that you can see the modifications that have been made. It's called pu-rocm.
>Do we need to update the package dependencies to make this work
>effectively for users?
Yes, I guess , because I had to modify the file debian/control to make it works ... Please let me know after checking my modification if you think that an update is necessary or not ...
>I know almost nothing about rocm - is there a good short intro that I
>can read to learn?
Of course, I'm sending you some information on this subject:
[1] This is the ROCm documentation provided by AMD, we are working with the AMD Radeon RX 6000 card. I suggest that you consult the ‘ROCm on Radeon GPUs’ section
as well as the Linux support section. You'll normally find information about AMD.
[2] Here is the wiki about ROCm , not very complete ...
[3] Here is a list of GPUs supported by Debian ROCm
[4] Salsa Git repository for rocm-opencl-icd
[5] You can read the README.md to understand more about ROCm and about the containers needed to run it .
[7] and [8]
Note that in our configuration we use the container podman+rocm to run our sbuild in local. I'am writting a wiki about it , describing some procedure and the way to implement it to make it works. I pushed the pkg silx before with the same method I used for sasmodels to implementd Rocm's and POCl's autopkgtest. The method for the pkg named silx is described in the wiki. Consider that is the same method for others. With some dependencies updates in others in order to pass the tests. The updates dépends on the pkg obviously.
Note also that the wiki isn't clear and needs a great cleaning to be more understandable, this not finish , the wiki is in building [6] :))
>Is there a way to upstream some of this work so that sasmodels upstream
>is testing against different stacks on a routine basis?
Honestly I Don't know, but in this case I didn't make it …
In the case of SASmodels I modified the debian/control because I have some errors about the downgrade of these dependcies : python3-sasmodels and python-sasmodels-doc
So I Added some dependencies to make it works. The build is tested from my computer with the config of Synchrotron SOLEIL servers.
>Do we know how flaky this might turn out to be? Other GPU-using tests
>have proven to be very flaky and end up getting the packages in an
>almost permanent will-soon-be-auto-removed state which is annoying for
>everyone involved.
It could be very critical effectively. Honestly about the potential fragility I Don't know, in my case it works , the tests are marked as PASSED for both and no matter how many time I run the sbuild …
>I think Drew's question about GPU-requirements for the test suite was
>more: what happens when the rocm-using test gets run on a machine
>without a suitable GPU (or is there a way to prevent that using a
>suitable restriction?)
I force the use of CPU by adding this into the file python-sasmodels-opencl :
# Disables GPU accelerators
export HSA_ENABLE_SDMA=0
export HIP_VISIBLE_DEVICES=""
export ROCR_VISIBLE_DEVICES=""
export GPU_MAX_HW_ALLOWED=0
# Force CPU usage for OpenCL
export OCL_ICD_VENDORS=none
export PYOPENCL_TEST=CPU
Yes, I understand , It could be very anoying… But with this they still marked as PASSED. So, you could test it with a machine with no GPU , strictly.
Sources :
[1] https://rocm.docs.amd.com/en/latest/
[2] https://wiki.debian.org/ROCm
[3] https://salsa.debian.org/rocm-team/community/team-project/-/wikis/Supported-GPU-list
[4] https://salsa.debian.org/rocm-team/rocm-hipamd
[5] https://salsa.debian.org/rocm-team/pkg-rocm-tools
[6] https://wiki.debian.org/DebianPAN/OpenCL
[7] https://en.wikipedia.org/wiki/ROCm#:~:text=ROCm%20is%20an%20Advanced%20Micro,HPC)%2C%20and%20heterogeneous%20computing.
[8] https://rocm.docs.amd.com/_/downloads/radeon/en/latest/pdf/
Warmly
Clément LONGEAC
More information about the Debian-pan-maintainers
mailing list