With some GPUs (mainly APUs), their target will not be available in the package options list of the ROCm packages in this repo.
I have not included them because certain components of ROCm fail to build on many of these targets, but I am not able to test all of them so some might work.
This is the list that I currently include in my ROCm packages:
gfx803
gfx900
gfx906
gfx908
gfx90a
gfx1010
gfx1011
gfx1012
gfx1030
gfx1031
gfx1100
gfx1101
gfx1102
This is the list of ALL possible targets for ROCm (may be entirely unsupported by AMD):
If you want to build for one of these devices, the changes that you need to make to most of the template files are the following:
In configure_args: Add $(vopt_if target 'target') at the end of the -DAMDGPU_TARGETS variable (or the appropriate variable for the specific ROCm component). Some templates may not use the configure_args but rather have the list in a separate place
In build_options: Add target at the end of the list.
Optionally also add it to the build_options_default to not have to specify it in etc/conf.
Some packages, such as ROCm-composable_kernel may have different target support from version to version so you should check out for any changes. The aforementioned packages also uses the variable -DGPU_TARGETS instead of -DAMDGPU_TARGETS for some reason unknown to me.
Some GPUs, such as the gfx940 are supported by AMD officially, but in my testing trying to build for these caused upstream build failures due to missing support in some components. I don't have the resources to build these packages for this architecture every update to check if AMD fixed their code, so I chose to leave the gfx940 and similar out of the default targets list. You're free to add them and try for yourself.
Support for some other GPUs, such as the gfx7xx series, has been explicitly removed in newer ROCm versions, so trying to get these working might be rather hard.
With some GPUs (mainly APUs), their target will not be available in the package options list of the ROCm packages in this repo. I have not included them because certain components of ROCm fail to build on many of these targets, but I am not able to test all of them so some might work.
This is the list that I currently include in my ROCm packages:
This is the list of ALL possible targets for ROCm (may be entirely unsupported by AMD):
I have acquired the above list from https://github.com/RadeonOpenCompute/ROCR-Runtime/blob/ff67af3ffb2ad69e8522b169a3d25df8332abd4f/src/image/blit_kernel.cpp
If you want to build for one of these devices, the changes that you need to make to most of the template files are the following:
configure_args
: Add$(vopt_if target 'target')
at the end of the-DAMDGPU_TARGETS
variable (or the appropriate variable for the specific ROCm component). Some templates may not use theconfigure_args
but rather have the list in a separate placebuild_options
: Addtarget
at the end of the list.build_options_default
to not have to specify it in etc/conf.Some packages, such as
ROCm-composable_kernel
may have different target support from version to version so you should check out for any changes. The aforementioned packages also uses the variable-DGPU_TARGETS
instead of-DAMDGPU_TARGETS
for some reason unknown to me.Some GPUs, such as the
gfx940
are supported by AMD officially, but in my testing trying to build for these caused upstream build failures due to missing support in some components. I don't have the resources to build these packages for this architecture every update to check if AMD fixed their code, so I chose to leave thegfx940
and similar out of the default targets list. You're free to add them and try for yourself. Support for some other GPUs, such as thegfx7xx
series, has been explicitly removed in newer ROCm versions, so trying to get these working might be rather hard.