hwlocality
hwlocality copied to clipboard
Expose GPU/heterogeneous API interop
hwloc provides interoperability with a bunch of GPU/heterogeneous system APIs. The amount of support code needed for each is small, but each will need to get a dedicated feature and suitable cfg+doc(cfg)+cfg(doc) annotations.
Also, testing is going to be problematic since CI nodes don't have GPUs and I don't even have local setups for some of these APIs.
- [ ] OpenCL (currently AMD and NVidia only): https://hwloc.readthedocs.io/en/v2.9/group__hwlocality__opencl.html
- [ ] Nvidia:
- CUDA Driver: https://hwloc.readthedocs.io/en/v2.9/group__hwlocality__cuda.html
- CUDA Runtime: https://hwloc.readthedocs.io/en/v2.9/group__hwlocality__cudart.html
- NVML: https://hwloc.readthedocs.io/en/v2.9/group__hwlocality__nvml.html
- [ ] AMD ROCm: https://hwloc.readthedocs.io/en/v2.9/group__hwlocality__rsmi.html
- [ ] Intel oneAPI Level Zero: https://hwloc.readthedocs.io/en/v2.9/group__hwlocality__levelzero.html
- [ ] OpenGL displays (currently NVidia-specific, so require nvidia feature): https://hwloc.readthedocs.io/en/v2.9/group__hwlocality__gl.html
I don't have working local setups for most of these GPU APIs and have little interest in them, so external contributions from people who got these working and have a high interest in using them would be appreciated.