Modeltest-NG

Overview

Modeltest-NG is a program for selecting the best-fit model of evolution for DNA and protein alignments. ModelTest-NG supersedes jModelTest and ProtTest in one single tool, with graphical and command console interfaces.

Version 0.1.7 is installed on the CSF. Please note that the GUI has not been installed – all use should be via batch jobs.

Restrictions on use

There are no restrictions on accessing Modeltest-NG on the CSF. The software is released under the Gnu GPL v3 license and all usage must fall within that 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/modeltest-ng/0.1.7          # MPI and multithreaded version

Running the application

Please do not run Modeltest-NG on the login node. Jobs should be submitted to the compute nodes via batch. You may, however, run modeltest-ng --help to see a list of command-line flags on the login node.

Example jobs for the multicore and MPI executables are available in the following directory (after loading the modulefile.) You can copy the files you find there to your own scratch area if you like:

cp -r $MODELTESTNGDIR/example-jobs/ ~/scratch

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/modeltest-ng/0.1.7

# $NSLOTS is automatically set to 1 for a serial job
modeltest-ng -p $NSLOTS -i input.fas -t topology -o results

Submit the jobscript using:

qsub scriptname

where scriptname is the name of your jobscript.

Single-node Multicore Parallel batch job submission

This uses the multi-threaded executable so will only run on a single compute node (max 32 cores.)

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
#$ -pe smp.pe 8     # Number of cores (can be 2--32)

module load apps/gcc/modeltest-ng/0.1.7

# $NSLOTS is automatically set to the number of cores requested above
modeltest-ng -p $NSLOTS flags...

Submit the jobscript using:

qsub scriptname

where scriptname is the name of your jobscript.

Single-node small MPI Parallel batch job submission

This uses the MPI executable so can run on one or more compute nodes. The following is for use on a single compute node (up to 32 cores.)

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
#$ -pe smp.pe 8     # Number of cores (can be 2--32)

module load apps/gcc/modeltest-ng/0.1.7

# $NSLOTS is automatically set to the number of cores requested above
mpirun -n $NSLOTS modeltest-ng-mpi flags...

Submit the jobscript using:

qsub scriptname

where scriptname is the name of your jobscript.

Multi-node large MPI Parallel batch job submission

This uses the MPI executable so can run on one or more compute nodes. The following is for use on a multiple compute nodes.

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
#$ -pe mpi-24-ib.pe 48     # Number of cores (48 or more in multiples of 24)

module load apps/gcc/modeltest-ng/0.1.7

# $NSLOTS is automatically set to the number of cores requested above
mpirun -n $NSLOTS modeltest-ng-mpi flags...

Submit the jobscript using:

qsub scriptname

where scriptname is the name of your jobscript.

Further info

Updates

None.

Last modified on December 6, 2022 at 4:53 pm by George Leaver