rocm: make amdgpu_target sticky (#34591)
The sticky property will prevent clingo from changing the amdgpu_target
to work around conflicts. This is the same behaviour as was adopted for
cuda_arch in 055c9d125d
.
This commit is contained in:
parent
2ef026b8c6
commit
e60e74694f
@ -132,6 +132,7 @@ class ROCmPackage(PackageBase):
|
||||
"amdgpu_target",
|
||||
description="AMD GPU architecture",
|
||||
values=spack.variant.any_combination_of(*amdgpu_targets),
|
||||
sticky=True,
|
||||
when="+rocm",
|
||||
)
|
||||
|
||||
|
@ -101,7 +101,7 @@ class Rccl(CMakePackage):
|
||||
|
||||
amdgpu_targets = ROCmPackage.amdgpu_targets
|
||||
|
||||
variant("amdgpu_target", values=auto_or_any_combination_of(*amdgpu_targets))
|
||||
variant("amdgpu_target", values=auto_or_any_combination_of(*amdgpu_targets), sticky=True)
|
||||
variant(
|
||||
"build_type",
|
||||
default="Release",
|
||||
|
@ -103,7 +103,7 @@ class Rocalution(CMakePackage):
|
||||
|
||||
amdgpu_targets = ROCmPackage.amdgpu_targets
|
||||
|
||||
variant("amdgpu_target", values=auto_or_any_combination_of(*amdgpu_targets))
|
||||
variant("amdgpu_target", values=auto_or_any_combination_of(*amdgpu_targets), sticky=True)
|
||||
variant(
|
||||
"build_type",
|
||||
default="Release",
|
||||
|
@ -101,7 +101,7 @@ class Rocblas(CMakePackage):
|
||||
|
||||
amdgpu_targets = ROCmPackage.amdgpu_targets
|
||||
|
||||
variant("amdgpu_target", values=auto_or_any_combination_of(*amdgpu_targets))
|
||||
variant("amdgpu_target", values=auto_or_any_combination_of(*amdgpu_targets), sticky=True)
|
||||
variant("tensile", default=True, description="Use Tensile as a backend")
|
||||
variant(
|
||||
"build_type",
|
||||
|
@ -104,8 +104,10 @@ class Rocfft(CMakePackage):
|
||||
values=("Release", "Debug", "RelWithDebInfo"),
|
||||
description="CMake build type",
|
||||
)
|
||||
variant("amdgpu_target", values=auto_or_any_combination_of(*amdgpu_targets))
|
||||
variant("amdgpu_target_sram_ecc", values=auto_or_any_combination_of(*amdgpu_targets))
|
||||
variant("amdgpu_target", values=auto_or_any_combination_of(*amdgpu_targets), sticky=True)
|
||||
variant(
|
||||
"amdgpu_target_sram_ecc", values=auto_or_any_combination_of(*amdgpu_targets), sticky=True
|
||||
)
|
||||
|
||||
depends_on("cmake@3.16:", type="build", when="@4.5.0:")
|
||||
depends_on("cmake@3.5:", type="build")
|
||||
|
@ -95,7 +95,7 @@ class Rocprim(CMakePackage):
|
||||
|
||||
amdgpu_targets = ROCmPackage.amdgpu_targets
|
||||
|
||||
variant("amdgpu_target", values=auto_or_any_combination_of(*amdgpu_targets))
|
||||
variant("amdgpu_target", values=auto_or_any_combination_of(*amdgpu_targets), sticky=True)
|
||||
variant(
|
||||
"build_type",
|
||||
default="Release",
|
||||
|
@ -101,7 +101,7 @@ class Rocrand(CMakePackage):
|
||||
|
||||
amdgpu_targets = ROCmPackage.amdgpu_targets
|
||||
|
||||
variant("amdgpu_target", values=auto_or_any_combination_of(*amdgpu_targets))
|
||||
variant("amdgpu_target", values=auto_or_any_combination_of(*amdgpu_targets), sticky=True)
|
||||
variant(
|
||||
"build_type",
|
||||
default="Release",
|
||||
|
@ -23,7 +23,7 @@ class Rocsolver(CMakePackage):
|
||||
|
||||
amdgpu_targets = ROCmPackage.amdgpu_targets
|
||||
|
||||
variant("amdgpu_target", values=auto_or_any_combination_of(*amdgpu_targets))
|
||||
variant("amdgpu_target", values=auto_or_any_combination_of(*amdgpu_targets), sticky=True)
|
||||
variant(
|
||||
"optimal",
|
||||
default=True,
|
||||
|
@ -25,7 +25,7 @@ class Rocsparse(CMakePackage):
|
||||
|
||||
amdgpu_targets = ROCmPackage.amdgpu_targets
|
||||
|
||||
variant("amdgpu_target", values=auto_or_any_combination_of(*amdgpu_targets))
|
||||
variant("amdgpu_target", values=auto_or_any_combination_of(*amdgpu_targets), sticky=True)
|
||||
variant(
|
||||
"build_type",
|
||||
default="Release",
|
||||
|
@ -100,7 +100,7 @@ class Rocthrust(CMakePackage):
|
||||
|
||||
# the rocthrust library itself is header-only, but the build_type and amdgpu_target
|
||||
# are relevant to the test client
|
||||
variant("amdgpu_target", values=auto_or_any_combination_of(*amdgpu_targets))
|
||||
variant("amdgpu_target", values=auto_or_any_combination_of(*amdgpu_targets), sticky=True)
|
||||
variant(
|
||||
"build_type",
|
||||
default="Release",
|
||||
|
@ -35,7 +35,7 @@ class Rocwmma(CMakePackage):
|
||||
# releases
|
||||
|
||||
amdgpu_targets = ("gfx908:xnack-", "gfx90a", "gfx90a:xnack-", "gfx90a:xnack+")
|
||||
variant("amdgpu_target", values=auto_or_any_combination_of(*amdgpu_targets))
|
||||
variant("amdgpu_target", values=auto_or_any_combination_of(*amdgpu_targets), sticky=True)
|
||||
variant(
|
||||
"build_type",
|
||||
default="Release",
|
||||
|
Loading…
Reference in New Issue
Block a user