Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
technical:recipes:ls-dyna [2024-06-07 12:33] – [Open MPI install] frey | technical:recipes:ls-dyna [2024-06-07 12:51] (current) – [VALET package definition] frey | ||
---|---|---|---|
Line 21: | Line 21: | ||
For this example, LS-DYNA will be installed in a workgroup' | For this example, LS-DYNA will be installed in a workgroup' | ||
- | ===== Directory | + | ===== Directory |
The LS-DYNA software packages must be downloaded to the cluster. | The LS-DYNA software packages must be downloaded to the cluster. | ||
Line 171: | Line 171: | ||
To make this version of Open MPI available to your LS-DYNA installs, a VALET package definition file should be created. | To make this version of Open MPI available to your LS-DYNA installs, a VALET package definition file should be created. | ||
- | <WRAP center round alert 60%> | + | <WRAP center round alert 80%> |
If the workgroup already has an existing '' | If the workgroup already has an existing '' | ||
</ | </ | ||
Line 182: | Line 182: | ||
url: | url: | ||
prefix: | prefix: | ||
- | |||
- | actions: | ||
- | - action: | ||
- | variable: | ||
- | value: | ||
- | development-env: | ||
- | |||
- | - action: | ||
- | variable: | ||
- | value: | ||
- | development-env: | ||
- | |||
- | - action: | ||
- | variable: | ||
- | value: | ||
- | development-env: | ||
- | |||
- | - action: | ||
- | variable: | ||
- | value: | ||
- | development-env: | ||
- | |||
- | - action: | ||
- | variable: | ||
- | value: | ||
- | development-env: | ||
- | |||
versions: | versions: | ||
- | |||
" | " | ||
description: | description: | ||
Line 225: | Line 197: | ||
url: | url: | ||
prefix: | prefix: | ||
+ | versions: | ||
+ | " | ||
+ | description: | ||
+ | dependencies: | ||
+ | - intel/2019 | ||
+ | </ | ||
- | actions: | + | ===== VALET package definition ===== |
- | - action: | + | |
- | variable: | + | |
- | value: | + | |
- | development-env: | + | |
- | | + | With the necessary dependencies satisfied, a VALET package definition for LS-DYNA can be created. |
- | | + | |
- | value: | + | |
- | development-env: | + | |
- | - action: | + | <code bash> |
- | | + | $ echo $LS_DYNA_PREFIX |
- | | + | / |
- | | + | </ |
- | | + | The ''< |
- | variable: | + | |
- | value: | + | |
- | development-env: true | + | |
- | | + | <file yaml ls-dyna.vpkg_yaml> |
- | variable: | + | ls-dyna: |
- | value: | + | prefix: < |
- | | + | url: http:// |
+ | description: | ||
+ | |||
+ | actions: | ||
+ | - variable: LSTC_LICENSE | ||
+ | action: | ||
+ | | ||
+ | - variable: | ||
+ | action: set | ||
+ | value: < | ||
+ | - variable: LSTC_INTERNAL_CLIENT | ||
+ | action: set | ||
+ | value: | ||
+ | - variable: LSTC_ROOT | ||
+ | | ||
+ | value: ${VALET_PATH_PREFIX} | ||
+ | | ||
+ | |||
+ | default-version: | ||
versions: | versions: | ||
- | "4.0.5:intel19,ls-dyna": | + | "15.0.2:single,hybrid,avx2": |
- | description: | + | description: |
+ | prefix: 15.0.2/ | ||
dependencies: | dependencies: | ||
- | - intel/2019 | + | - openmpi/4.0.5: |
+ | " | ||
+ | description: | ||
+ | prefix: 15.0.2/ | ||
+ | dependencies: | ||
+ | - openmpi/ | ||
</ | </ | ||
+ | |||
+ | Loading one of these packages into the shell environment makes the '' | ||
+ | |||
+ | <code bash> | ||
+ | $ vpkg_require ls-dyna/ | ||
+ | Adding dependency `intel/ | ||
+ | Adding dependency `libfabric/ | ||
+ | Adding dependency `openmpi/ | ||
+ | Adding package `ls-dyna/ | ||
+ | |||
+ | $ which ls-dyna | ||
+ | / | ||
+ | </ | ||
+ | |||
+ | ===== Running jobs ===== | ||
+ | |||
+ | On the Caviness/ | ||
+ | |||
+ | * The number of Slurm //tasks// represent the MPI ranks for a hybrid or MPP variant of LS-DYNA | ||
+ | * The number of CPUs per Slurm task represent the Open MP threads for an smp or hybrid variant of LS-DYNA | ||
+ | |||
+ | Follow the comments in the script header to determine which flags to alter and how to do so. The script template must be altered to add the desired version/ | ||
+ | |||
+ | < | ||
+ | # | ||
+ | # [EDIT] Do any pre-processing, | ||
+ | # or explicit changes to PATH, LD_LIBRARY_PATH, | ||
+ | # | ||
+ | vpkg_require ls-dyna/ | ||
+ | </ | ||
+ | |||
+ | Toward the end of the job script template, the LS-DYNA program is run: | ||
+ | |||
+ | < | ||
+ | # | ||
+ | # [EDIT] Execute your MPI program | ||
+ | # | ||
+ | ${UD_MPIRUN} ls-dyna i=my_model.k | ||
+ | mpi_rc=$? | ||
+ | </ |