Abaqus
Abaqus in the Academic Labs
Abaqus in RDSH
Using Abaqus in OnDemand
Start a Cluster Desktop from the Ondemand interface: https://compute.engr.wustl.edu
Open a terminal.
Execute the command
/project/research/abaqus22/bin/abaqus cae
Using Abaqus in Batch Mode
More information on managing batch jobs and job scripts in LSF can be found atĀ The LSF Scheduler
A basic batch script for Abaqus, that runs on the cpu-compute-long queue, asking for 32 CPU cores and 64GB of RAM:
# embedded options to bsub - start with #BSUB # -- job name --- #BSUB -J abaqus_sample # -- Notify me by email when execution begins -- #BSUB -B # -- Notify me by email when execution ends -- #BSUB -N # -- email address -- # please uncomment the following line and put in your e-mail address, # if you want to receive e-mail notifications on a non-default address ##BSUB -u your_email_address # -- estimated wall clock time (execution time), commented out by default.
# LSF will kill jobs with this setting at the specified time ##BSUB -W 4:00 ### -- specify that we need 32GB of memory -- #BSUB -R "rusage[mem=32GB]" # -- parallel environment requests: 8 cores -- #BSUB -n 8 ### -- specify that the cores MUST BE on a single host! It's a SMP job! -- #BSUB -R "span[hosts=1]" ### -- Specify the output and error file. %J is the job-id -- ### -- -o and -e mean append, -oo and -eo mean overwrite -- #BSUB -o Output_%J.out #BSUB -e Error_%J.err
/project/research/abaqus22/bin/abaqus job=my_sample_job input=model.inp cpus=$LSB_DJOB_NUMPROC memory="32 gb" interactive
In this command line there are 4 options:
job=my_sample_job
: this passes the user job-file as argument to ABAQUS;input=model.inp
: this passes the file with the model input file as argument to ABAQUS;cpus=$LSB_DJOB_NUMPROC
: this tells ABAQUS to run in parallel, using the number of cores requested.Ā LSB_DJOB_NUMPROCĀ is a variable automatically set to the number of cores that your script reserves.memory="32 gb"
: this option tells abaqus the amount of RAM available for the job. This must correspond to the the TOTAL amount of memory requested in the job. For an explanation, look at the MEMORY note below.interactive
: this option prevents ABAQUS from getting stuck waiting for user input.
MEMORY: ABAQUS assigns a percentage (on linux 80%) of the memory available on the machine to be used as RAM and swap space, to speed up calculation. But this percentage is applied to the physical memory of the machine, not on the memory requested in the jobscript. We recommend toĀ set this value to be the actual memory requested in the jobscript, with the command line optionĀ memory="16 gb"Ā
. This valueĀ must correspond to the total memory requested for the job
Passing a script
If you want to pass a python script with the instructions to execute to ABAQUS, the syntax is different. Assuming that your script name isĀ myScript.py, the right command line is:
/project/research/abaqus22/bin/abaqus cae noGUI=myScript
Notice that youĀ do not haveĀ to specify the ā.pyā extension.