http://www.eastchem.ac.uk http://www.eastchem.ac.uk/rcf http://www.st-andrews.ac.uk http://www.ed.ac.uk


Support Pages | User Guides


EaStCHEM Submission Software Package (SSP) User Guide

Download the EaStCHEM SSP: eastchem-sub.tar.gz

Contents

  1. Introduction

  2. Basic Syntax

  3. Grid Submission

  4. Examples

1. Introduction

The EaStCHEM Submission Software Package (EaStCHEM-SSP) is a suite of utilities designed to allow simple submission of jobs to the batch queuing system running on the RCF facilities. The main features of the package are:

The package is based on Perl and bash, two of the most widely available tools on Linux systems and can provide interfaces to a number of different batch queuing systems (although it is primarily aimed at Sun Grid Engine.)

2. Basic Syntax

All of the commands in the package share a common syntax:

command [options] <jobname> [<arg1> <arg2> ... ]
command

The submission command (see Table of Commands)

[options]

Options to the command (see Table of Options)

<jobname>

Name of the job. This has different effects depending on the command used (see Table of Commands)

[<arg1> ... ]

Arguments to <jobname>. This only has meaning for the jobsub command.

Table of commands in EaStCHEM-SSP

Command

Software Package

<jobname>

Notes

castepsub

CASTEP

Input: <jobname>.cell <jobname>.param

cpmdsub

CPMD

Input: <jobname>

crys06sub

CRYSTAL 06

Input: <jobname>.INPUT

dlpolysub

DL_POLY 2

Input: <jobname>.CONTROL <jobname>.CONFIG <jobname>.FIELD

g03sub

Gaussian 03

Input: <jobname>.com (or <jobname>)

Can only run in serial or SMP mode

gamesssub

GAMESS-UK

Input: <jobname>.in

molprosub

MOLPRO

Input: <jobname>.mol

sandersub

sander (Amber 9)

Input: <jobname>.in <jobname>.inpcrd <jobname>.prmtop

jobsub

any

Executable file

[<arg1> ...] provide arguments to executable

Table of options in EaStCHEM-SSP

Option

Description

Notes

-np <nproc>

Set the number of processors to use

The format is either a number (raw processors) or of the form axb (where a is the number of nodes and b the number of processors per node.) If omitted a serial job is assumed.

-q <queue>

Queue to submit job to

If omitted, a default queue is chosen according to the value of <nproc>. Cannot be omitted for grid jobs

-A <account>

Account to charge to

If omitted, the defualt charging account for the current user is used

-h [<user>@]<host>

Host on grid to submit job to

If <user> is omitted, then the username on the current host is used.

-norun

Create submission file only. Exit without submitting the job

Useful for creating templates

-help

Show a brief summary of usage and exit

3. Grid Submission

Submitting jobs to the grid rather than the local queuing system adds a couple of further considerations.

You can access the list of queues and executable locations at a remote site using the qlist and clistcommand (see the EaStCHEM PaSS User Guide for more information on grid related commands.)

4. Examples

The following examples illustrate how the various commands can be used.

Submit a serial Gaussian 03 job to a local queue

g03sub -q serial-medium.q ethane

This command would submit a serial job (1 processor by default) to the queue serial-medium.q on the local machine with the Gaussian 03 input in ethane.com

A DMP CPMD job to a local queue

cpmdsub -np 4x2 -q parallel-medium.q h2-wave.inp

This command would submit a DMP (distributed memory parallel) CPMD job to the queue parallel-medium.q on the local machine using the input in h2-wave.inp. Notice the -np 4x2 syntax requesting 4 processors on each of two nodes (i.e. 8 processors in total.) We could also have used

cpmdsub -np 8 -q parallel-medium.q h2-wave.inp

And let cpmdsub decide how to split up the 8 processors (in this case it would do, by default, exactly what we requested in the first case: 4 processors on each of two nodes.) In general, it is better to use the second form of the command and let the machine choose the distribution of the processors.

A template for a local DMP sander (Amber 9) job

For many jobs, particularly using sander, you will often want to modify the actual running command before running the job. The submission tools allow the creation of the job submission script without submission to the batch job system. In this way you can edit the submission file before submitting the job or even use it as a template. For example, the command

sandersub -norun -np 16 -q parallel-long.q my_job

would create the my_job.bash sander submission script which you could then edit before submitting to the batch job system with a command such as:

qsub my_job.bash

You can find out more about the syntax of job submission scripts in the Job Submission topic.

A DMP grid DL_POLY job

For grid submission, the -e option is often used in combination with the -h option to specify the location of the executable on the remote host. An example of this is:

dlpolysub -h other@remote.host.com -e /usr/bin/DL_POLY.X -np 4x4 -q parallel.q methanol

Here we specify that we are running the job on remote.host.com as the user other; the DL_POLY executable is found at /usr/bin/DL_POLY.X; we want 16 processors (4 on each node); we are submitting to the queue parallel.q and the input is in methanol.CONTROL, methanol.CONFIG and methanol.FIELD. For more information on using the EaStCHEM grid see the Job Submission topic and How to set up your account to use the EaStCHEM Grid.

Top

ComputationalChemistryActivity/SupportPages/EaStCHEMSub (last edited 2007-10-30 14:19:29 by AndrewTurner)