On 2024-03-08 during the Q&A session we went through the entire pyiron setup in a HPC at Chalmers University of Technology. The most important steps during installation were highlighted. Here I give a brief description of what have been covered.
How to make pyiron submit to the job queue that executes CASTEP?
Make sure ~/pyiron/resources/queues/<queuename>.sh and queue.yaml is configured
create a bin folder in ~/pyiron/resources/<mycode>/. In this case, the folder is called castep
create an executable file to <mycode>
This is the file that pyiron uses to execute in a compute node. It is important to load all necessary modules and set bash variables there.
Name convention for this file is run_<mycode>_<version>_mpi.sh. In this example, name is run_castep_23.1_mpi.sh.
If <mycode> runs in serial, remove mpi from the file name.
If runs in parallel, call mpiexec $1 <mycode_exectuable>. pyiron uses the variable $1 to assign te number of cores/tasks defined when setting up the job in the notebook.
Give executable permission to the run file in bin, i.e., chmod a+x run_<mycode>_<version>_mpi.sh
Test the execution of the file
You can have multiple executables in bin and choose the one you want to use in production.
On 2024-03-08 during the Q&A session we went through the entire
pyiron
setup in a HPC at Chalmers University of Technology. The most important steps during installation were highlighted. Here I give a brief description of what have been covered.~/pyiron/resources/queues/<queuename>.sh
andqueue.yaml
is configuredbin
folder in~/pyiron/resources/<mycode>/
. In this case, the folder is calledcastep
<mycode>
pyiron
uses to executebash
variables there.run_<mycode>_<version>_mpi.sh
. In this example, name isrun_castep_23.1_mpi.sh
.<mycode>
runs in serial, removempi
from the file name.mpiexec $1 <mycode_exectuable>
.pyiron
uses the variable $1 to assign te number of cores/tasks defined when setting up the job in the notebook.chmod a+x run_<mycode>_<version>_mpi.sh
You can have multiple executables in
bin
and choose the one you want to use in production.