Skip to content

Only use one (principal) compiler per enviroment #1167

@climbfuji

Description

@climbfuji

Is your feature request related to a problem? Please describe.
The spack-stack developers decided to limit environments to one compiler only. Strictly, that is one principal compiler as the default for all packages, with the option to use a fallback compiler for certain packages that are incompatible.

Describe the solution you'd like
We can achieve this either via

packages:all:prefer:['%oneapi']

or

packages:all:require:['%oneapi']

with additional "requires" for individual packages to override. This is what E4S does, and it gives you more contro (see https://github.com/spack/spack/blob/develop/share%2Fspack%2Fgitlab%2Fcloud_pipelines%2Fstacks%2Fe4s-oneapi%2Fspack.yaml#L64)l. The downside is more settings in our configs.

We also want to add the option to set the compiler as part of spack stack create env and remove the compiler matrices that we use in some of our templates. We also need to update the CI scripts and instructions accordingly.

Additional context
n/a

Metadata

Metadata

Assignees

Labels

enhancementNew feature or request

Type

No type

Projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions