Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

idea: CalcJob input plugin can specify default name of executable in codeinfo.json, if not provided by user #5941

Open
ltalirz opened this issue Mar 23, 2023 · 0 comments
Labels
type/feature request status undecided

Comments

@ltalirz
Copy link
Member

ltalirz commented Mar 23, 2023

Is your feature request related to a problem? Please describe

AiiDA requires computers and codes to be set up individually for each profile, which can be a significant amount of hassle for new users - and also unnecessary.

For a given computational environment, all the required parameters (how to connect to the computer; which packages are available, etc.) can be known, and the setup can be automated entirely (e.g. this prototype already goes into this direction).

However, many codes have more than one binary, and fully automating this approach requires maintaining a mapping between CalcJob input plugin and executable name.

One can maintain this mapping separately, but wouldn't it be much nicer if the CalcJob input plugin knew which (default) executable name it expected?

Describe the solution you'd like

For many simulation codes (not all [1]), the name of the executable that goes with a specific input plugin is either constant (pw.x) or can be guessed based on input parameters (e.g. vasp_std, vasp_gam, vasp_ncl).

Assuming that this executable will be found in the PATH (e.g. via a module load), it would therefore be possible to allow users to skip specifying the executable explicitly when setting up a code for that input plugin.

This would not worsen provenance, since the input script is still stored (and generated from the calculation inputs).

[1] There are more complicated cases, like cp2k, where the executable name may vary depending on OpenMP support (or, say, CUDA support, etc.), and determining the executable intended by the user would involve mind reading. I suspect it is the minority of cases, though.

Describe alternatives you've considered

This is just a first thought.
Comments @sphuber ?

@ltalirz ltalirz added the type/feature request status undecided label Mar 23, 2023
@ltalirz ltalirz changed the title idea: CalcJob input plugin can specify default name of executable idea: CalcJob input plugin can specify default name of executable in codeinfo.json, if not provided by user Mar 23, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
type/feature request status undecided
Projects
None yet
Development

No branches or pull requests

1 participant