From b9d6a5103dd2f96c1a3e3e729435bee4cd30eac1 Mon Sep 17 00:00:00 2001 From: Massimiliano Culpo Date: Tue, 26 Apr 2022 02:19:51 +0200 Subject: ASP-based solver: allow configuring target selection (#29835) * ASP-based solver: allow configuring target selection This commit adds a new "concretizer:targets" configuration section, and two options under it. - "concretizer:targets:granularity" allows switching from considering only generic targets to consider all possible microarchitectures. - "concretizer:targets:host_compatible" instead controls whether we can concretize for microarchitectures that are incompatible with the current host. * Add documentation * Add unit-tests --- etc/spack/defaults/concretizer.yaml | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'etc') diff --git a/etc/spack/defaults/concretizer.yaml b/etc/spack/defaults/concretizer.yaml index 52200062c8..2aadccd6cd 100644 --- a/etc/spack/defaults/concretizer.yaml +++ b/etc/spack/defaults/concretizer.yaml @@ -15,3 +15,16 @@ concretizer: # as possible, rather than building. If `false`, we'll always give you a fresh # concretization. reuse: false + # Options that tune which targets are considered for concretization. The + # concretization process is very sensitive to the number targets, and the time + # needed to reach a solution increases noticeably with the number of targets + # considered. + targets: + # Determine whether we want to target specific or generic microarchitectures. + # An example of the first kind might be for instance "skylake" or "bulldozer", + # while generic microarchitectures are for instance "aarch64" or "x86_64_v4". + granularity: microarchitectures + # If "false" allow targets that are incompatible with the current host (for + # instance concretize with target "icelake" while running on "haswell"). + # If "true" only allow targets that are compatible with the host. + host_compatible: false -- cgit v1.2.3-60-g2f50