Skip to content

Add scheduler commands and mpirun extra params at the Code level #6927

@GeigerJ2

Description

@GeigerJ2

ORIGINAL ISSUE BELOW


With a code that is set up like this:

❯ verdi code show 2
-----------------------  --------------------------------------
PK                       2
UUID                     ad20bb6d-66c2-4ec7-a2c1-cce26bb2e97f
Type                     core.code.installed
Label                    pw
Description              abc
Default calc job plugin  quantumespresso.pw
Use double quotes        False
With mpi
Prepend text             uenv start quantumespresso/v7.3.1:v1
Append text
Computer                 eiger (eiger.alps.cscs.ch), pk: 3
Filepath executable      /user-environment/env/default/bin/pw.x
-----------------------  --------------------------------------

On the new CSCS Alps infrastructure, even though the code actually works for running simulations, verdi code test fails, as the filepath_executable cannot be found. This is because uenv images are actually squashfs file systems that get mounted when running uenv start, meaning the file does not exist on the user's file system before. This is different from the common setup where the required module load commands are in the prepend_text and are executed at runtime to make the necessary libraries available, but the filepath_executable already points to an existing file, e.g., see here:
https://github.com/aiidateam/aiida-code-registry/blob/2532dfd5cf49bb92d9143f084a6b7b0239785450/daint.cscs.ch/codes/pw-7.2-hybrid.yaml#L5-L9

While this is a uenv, and therefore CSCS specific issue, as many of us use the CSCS machines, I thought it's still good to have it documented somewhere.

A simple fix could be to add a --run-prepend-text option to verdi code test, which should then make the test run successfully.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    Status

    In progress

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions