Hi Cordell, thanks for opening this bug! I asked Alex if I can take care of this and he gave me the green lights.
On Thu, 26 Sep 2024 18:39:58 +0000 Cordell Bloor <[email protected]> wrote: > Dear Maintainer, > > The kokkos project has an AMD ROCm backend for hardware acceleration on > AMD GPUs. It would be good to enable this functionality. The AMD backend > depends on the following packages: > > hipcc > librocthrust-dev > > The kokkos library uses an unusual set of options to choose the AMD GPU > targets. Please see this table from the Spack package [1] that translates > from the LLVM target name to the kokkos architecture suffix: > > amdgpu_arch_map = { > "gfx900": "vega900", > "gfx906": "vega906", > "gfx908": "vega908", > "gfx90a": "vega90A", > "gfx940": "amd_gfx940", > "gfx942": "amd_gfx942", > "gfx1030": "navi1030", > "gfx1100": "navi1100", > } > > The names are somewhat misleading because gfx908 and gfx90a are not > vega. The gfx908 and gfx90a architectures were arcturus and aldebaran, > respectively. The option name doesn't affect anything, but perhaps that > clarification will help avoid confusion in the future. > > I would suggest enabling all of the architectures listed above, except > perhaps gfx940, as that architecture was only used for early MI300 > engineering samples. All retail MI300 hardware is gfx942. > > The kokkos architecture names would be used with the Kokkos_ARCH_ > prefix, so I believe this would result in the following flags: > > -DKokkos_ARCH_vega900=ON > -DKokkos_ARCH_vega906=ON > -DKokkos_ARCH_vega908=ON > -DKokkos_ARCH_vega90A=ON > -DKokkos_ARCH_amd_gfx942=ON > -DKokkos_ARCH_navi1030=ON > -DKokkos_ARCH_navi1100=ON > > You may also need: > -DKokkos_ENABLE_HIP=ON > -DKokkos_ENABLE_ROCTHRUST=ON > > Compiling custom kernels will require the use of hipcc as the C++ > compiler. This can be done with CXX=hipcc before calling into CMake. Any > options that are incompatible with device code can be restricted to host > code by prefixing -Xarch_host. For an example of this, see the rocthrust > package [2]. > So enabling all of this will enable AMD GPU support? >If you require access to compatible hardware to test this functionality, > please reach out privately and I may be able to help. That would be nice, since I don't have any AMD GPU available. I'm on NVIDIA.. Thanks again! Regards, -- Arian Ott [email protected]
signature.asc
Description: This is a digitally signed message part.

