EMsoft

Overview

EMsoft is a program for the computation and visualization of scanning electron microscopy diffraction patterns, notably EBSD, ECP, TKD, and EKP.

Version 5.0.3 is installed on the CSF. The EMsoftSDK and EMsoftData packages have been installed centrally.

Restrictions on use

There are no restrictions on access EMsoft on the CSF. All usage must adhere to the license.

Set up procedure

We now recommend loading modulefiles within your jobscript so that you have a full record of how the job was run. See the example jobscript below for how to do this. Alternatively, you may load modulefiles on the login node and let the job inherit these settings.

Load one of the following modulefiles:

module load apps/gcc/emsoft/5.0.3                 # A release version (faster)
module load apps/gcc/emsoft/5.0.3-debug           # Debugging turned on during compiler (slower)

This will set the The EMSOFTPATHNAME environment variable to point to the central installation. All other EMSOFT env vars are unset and so the application should work in your current working directory.

Running the application

Please do not run EMsoft on the login node. Jobs should be submitted to the compute nodes via batch.

Serial batch job submission

Create a batch submission script (which will load the modulefile in the jobscript), for example:

#!/bin/bash --login
#$ -cwd             # Job will run from the current directory
                    # NO -V line - we load modulefiles in the jobscript

module load apps/gcc/emsoft/5.0.3

# You may need to indicate where to write data and temp files.
export EMDATAPATHNAME=/scratch/$USER/EMdata/
export EMTMPPATHNAME=/scratch/$USER/EMdata/temp/
mkdir -p $EMDATAPATHNAME $EMTMPPATHNAME

# Location where your Xtal data is stored. Change as required.
export EMXTALFOLDERPATHNAME=/scratch/$USER/XtalFolder/

# Example running the EMEBSDDI app. The input .nml file needs modifying
# to say how many cores are in use. Run the CSF helper script that adds
# so lines to the end of the input file:
emsoft-ri-cores-gpus-config $NSLOTS >> input.nml

# Now run the app
EMEBSDDI input.nml

Submit the jobscript using:

qsub scriptname

where scriptname is the name of your jobscript.

GPU batch job submission

Access to the GPUs in the CSF is not automatic. Please request access by contacting us on its-ri-team@mancehster.ac.uk.

Create a batch submission script (which will load the modulefile in the jobscript), for example:

#!/bin/bash --login
#$ -cwd             # Job will run from the current directory
#$ -l v100=1        # Use a single GPU
#$ -pe smp.pe 8     # Number of cores per GPU (2--8). Default is 1 if this line is missing.
                    # NO -V line - we load modulefiles in the jobscript

module load apps/gcc/emsoft/5.0.3

# You may need to indicate where to write data and temp files.
# [On a GPU node you may want to use $HOME/localscratch/ to use the
# fast NVMe storage. But you must remove your files from there
# at the end of the job.]
export EMDATAPATHNAME=/scratch/$USER/EMdata/
export EMTMPPATHNAME=/scratch/$USER/EMdata/temp/
mkdir -p $EMDATAPATHNAME $EMTMPPATHNAME

# Location where your Xtal data is stored. Change as required.
export EMXTALFOLDERPATHNAME=/scratch/$USER/XtalFolder/

# Example running the EMEBSDDI app. The input .nml file needs modifying
# to say how many cores are in use. Run the CSF helper script that adds
# so lines to the end of the input file:
emsoft-ri-cores-gpus-config $NSLOTS $NGPUS >> input.nml

# Now run the app
EMEBSDDI input.nml

Submit the jobscript using:

qsub scriptname

where scriptname is the name of your jobscript.

Further info

Updates

None.

Last modified on March 30, 2021 at 2:31 pm by George Leaver