LS-DYNA

LS-DYNA is a general purpose finite element code for simulating complex structural problems, specializing in nonlinear, transient dynamic problems using explicit integration. LS-DYNA is one of the codes developed at Livermore Software Technology Corporation (LSTC).

Availability and Restrictions

LS-DYNA is available on Ruby, Oakley, and Glenn Clusters for both serial (smp solver for single node jobs) and parallel (mpp solver for multipe node jobs) versions. The versions currently available at OSC are:

Version Oakley Ruby notes
971-R4.2.1 smp       
mpp       
971-R5 smp       
mpp       
971-R5.1.1 smp X   Default version on Oakley prior to 09/15/2015
mpp X   Default version on Oakley prior to 09/15/2015
971-R7.0.0 smp X X*  
mpp X X*  

971-R7.1.1

smp  X*    
mpp X*    

971-R9.0.1

smp  X    
mpp X    
*: Current default version

Feel free to contact OSC Help if you need other versions for your work.

Access for Academic Users

OSC does not provide LS_DYNA license directly, however users with their own academic departmental license can use it on the OSC clusters.  Please contact OSC Help for further instruction.

Access for Commerical Users

Contact OSC Help for getting access to LS-DYNA if you are a commerical user.

Usage

Usage on Oakley

Set-up on Oakley

To view available modules installed on Oakley, use  module avail ls-dyna  for smp solvers, and use  module spider mpp  for mpp solvers. In the module name, '_s' indicates single precision and '_d' indicates double precision. For example, mpp-dyna/971_d_R7.0.0 is the mpp solver with double precision on Oakley. Use  module load name  to load LS-DYNA with a particular software version. For example, use  module load mpp-dyna/971_d_R7.0.0   to load LS-DYNA mpp solver version 7.0.0 with double precision on Oakley.

Batch Usage on Oakley

When you log into oakley.osc.edu you are actually logged into a linux box referred to as the login node. To gain access to the mutiple processors in the computing environment, you must submit your job to the batch system for execution. Batch jobs can request mutiple nodes/cores and compute time up to the limits of the OSC systems. Refer to Queues and Reservations and Batch Limit Rules for more info.  Batch jobs run on the compute nodes of the system and not on the login node. It is desirable for big problems since more resources can be used.

Interactive Batch Session

For an interactive batch session one can run the following command:

qsub -I -l nodes=1:ppn=12 -l walltime=00:20:00 
which requests one whole node with 12 cores ( -l nodes=1:ppn=12 ), for a walltime of 20 minutes ( -l walltime=00:20:00 ). You may adjust the numbers per your need.
Non-interactive Batch Job (Serial Run)

A batch script can be created and submitted for a serial or parallel run. You can create the batch script using any text editor you like in a working directory on the system of your choice. Please follow the steps below to use LS-DYNA via the batch system:

1) copy your input files ( explorer.k  in the example below) to your work directory at OSC

2) create a batch script, similar to the following file, saved as job.txt . It uses the smp solver for a serial job (nodes=1) on Oakley:

#PBS -N plate_test
#PBS -l walltime=5:00:00
#PBS -l nodes=1:ppn=12
#PBS -j oe
# The following lines set up the LSDYNA environment
module load ls-dyna/971_d_7.0.0
#
# Move to the directory where the input files are located
#
cd $PBS_O_WORKDIR
#
# Run LSDYNA (number of cpus > 1)
#
lsdyna I=explorer.k NCPU=12

 3) submit the script to the batch queue with the command:  qsub job.txt

 When the job is finished, all the result files will be found in the directory where you submitted your job ($PBS_O_WORKDIR). Alternatively, you can submit your job from the temporary directory ($TMPDIR), which is faster to access for the system and might be beneficial for bigger jobs. Note that $TMPDIR is uniquely associated with the job submitted and will be cleared when the job ends. So you need to copy your results back to your work directory at the end of your script. 

Non-interactive Batch Job (Parallel Run)
Please follow the steps below to use LS-DYNA via the batch system:

1) copy your input files ( explorer.k  in the example below) to your work directory at OSC

2) create a batch script, similar to the following file, saved as job.txt ). It uses the mmp solver for a parallel job (nodes>1) on Oakley:

#PBS -N plate_test
#PBS -l walltime=5:00:00
#PBS -l nodes=2:ppn=12
#PBS -j oe
# The following lines set up the LSDYNA environment
module swap mvapich2/1.7 intelmpi
module load mpp-dyna/971_d_R7.0.0
#
# Move to the directory where the input files are located
#
cd $PBS_O_WORKDIR
#
# Run LSDYNA (number of cpus > 1)
#
mpiexec mpp971 I=explorer.k NCPU=24

 3) submit the script to the batch queue with the command:  qsub job.txt

When the job is finished, all the result files will be found in the directory where you submitted your job ($PBS_O_WORKDIR). Alternatively, you can submit your job from the temporary directory ($TMPDIR), which is faster to access for the system and might be beneficial for bigger jobs. Note that $TMPDIR is uniquely associated with the job submitted and will be cleared when the job ends. So you need to copy your results back to your work directory at the end of your script. An example scrip should include the following lines:

...
cd $TMPDIR
cp $PBS_O_WORKDIR/explorer.k .
... #launch the solver and execute
pbsdcp -g '*' $PBS_O_WORKDIR

Usage on Ruby

Set-up on Ruby

To view available modules installed on Ruby, use  module avail ls-dyna  for smp solvers, and use  module spider mpp  for mpp solvers. In the module name, '_s' indicates single precision and '_d' indicates double precision. For example, mpp-dyna/971_d_R7.0.0 is the mpp solver with double precision on Ruby. Use  module load name  to load LS-DYNA with a particular software version. For example, use  module load mpp-dyna/971_d_R7.0.0   to load LS-DYNA mpp solver version 7.0.0 with double precision on Ruby.

Batch Usage on Ruby

When you log into ruby.osc.edu you are actually logged into a linux box referred to as the login node. To gain access to the mutiple processors in the computing environment, you must submit your job to the batch system for execution. Batch jobs can request mutiple nodes/cores and compute time up to the limits of the OSC systems. Refer to Queues and Reservations and Batch Limit Rules for more info. 

Interactive Batch Session

For an interactive batch session one can run the following command:

qsub -I -l nodes=1:ppn=20 -l walltime=00:20:00 

which requests one whole node with 20 cores ( -l nodes=1:ppn=20 ), for a walltime of 20 minutes ( -l walltime=00:20:00 ). You may adjust the numbers per your need.

Non-interactive Batch Job (Serial Run)

A batch script can be created and submitted for a serial or parallel run. You can create the batch script using any text editor you like in a working directory on the system of your choice. Please follow the steps below to use LS-DYNA via the batch system:

1) copy your input files ( explorer.k  in the example below) to your work directory at OSC

2) create a batch script, similar to the following file, saved as job.txt . It uses the smp solver for a serial job (nodes=1) on Ruby:

#PBS -N plate_test
#PBS -l walltime=5:00:00
#PBS -l nodes=1:ppn=20
#PBS -j oe
# The following lines set up the LSDYNA environment
module load ls-dyna/971_d_7.0.0
#
# Move to the directory where the input files are located
#
cd $PBS_O_WORKDIR
#
# Run LSDYNA (number of cpus > 1)
#
lsdyna I=explorer.k NCPU=20

 3) submit the script to the batch queue with the command:  qsub job.txt

 When the job is finished, all the result files will be found in the directory where you submitted your job ($PBS_O_WORKDIR). Alternatively, you can submit your job from the temporary directory ($TMPDIR), which is faster to access for the system and might be beneficial for bigger jobs. Note that $TMPDIR is uniquely associated with the job submitted and will be cleared when the job ends. So you need to copy your results back to your work directory at the end of your script. 

Non-interactive Batch Job (Parallel Run)

Please follow the steps below to use LS-DYNA via the batch system:

1) copy your input files ( explorer.k  in the example below) to your work directory at OSC

2) create a batch script, similar to the following file, saved as job.txt ). It uses the mmp solver for a parallel job (nodes>1) on Ruby:

#PBS -N plate_test
#PBS -l walltime=5:00:00
#PBS -l nodes=2:ppn=20
#PBS -j oe
# The following lines set up the LSDYNA environment
module swap mvapich2/1.7 intelmpi/5.0.1
module load mpp-dyna/971_d_R7.0.0
#
# Move to the directory where the input files are located
#
cd $PBS_O_WORKDIR
#
# Run LSDYNA (number of cpus > 1)
#
mpiexec mpp971 I=explorer.k NCPU=40

 3) submit the script to the batch queue with the command:  qsub job.txt

When the job is finished, all the result files will be found in the directory where you submitted your job ($PBS_O_WORKDIR). Alternatively, you can submit your job from the temporary directory ($TMPDIR), which is faster to access for the system and might be beneficial for bigger jobs. Note that $TMPDIR is uniquely associated with the job submitted and will be cleared when the job ends. So you need to copy your results back to your work directory at the end of your script. An example scrip should include the following lines:

...
cd $TMPDIR
cp $PBS_O_WORKDIR/explorer.k .
... #launch the solver and execute
pbsdcp -g '*' $PBS_O_WORKDIR

Further Reading

See Also

Supercomputer: 
Service: