Which tools automatically use a cluster?

The following programs/scripts are able to self-submit in an SGE-capable environment and should never be used in conjunction with fsl_sub.

FSL TOOLS
        Scripts that self-submit
FDTbedpostx
FEATfeat feat_gm_prepare
FIRSTrun_first_all
FSLVBMfslvbm_2_template fslvbm_3_proc
POSSUMpossumX
RANDOMISErandomise_parallel
TBSStbss_2_reg
        GUIs that self-submit
FDTFDT GUI ( probtrackx only )
FEATFEAT GUI
FLIRTFLIRT GUI
POSSUMPOSSUM GUI

Note that all other FSL GUIs will only run jobs on the local machine, to submit to a cluster you must use the equivalent command-line call in conjunction with fsl_sub ( see below ).

How do I submit other jobs to a cluster?

To submit all other tasks to a cluster use the fsl_sub command, which takes as input either a normal program call or a plain-text list of tasks:

fsl_sub fslmaths input -add 1 output
fsl_sub my_task_list

If you have an estimate of how long a job will take, you can specify the required job length in minutes with the -T option:

fsl_sub -T 30 fslmaths input -add 1 output

Or if you have a particular queue you want the job to run on use the -q option ( fsl_sub defaults to "long.q" ):

fsl_sub -q bigmem.q list_of_ram_intensive_jobs

Which jobs should be submitted to a cluster?

In general a script or program should be submitted to a cluster via fsl_sub if

1) It uses a large ( in time and/or voxel dimensions ) dataset.

2) The script or program performs a non-trivial processing task.

Typically the programs in fslutils ( fslmaths, fslstats, fslroi etc ) can be run locally, more sophisticated programs like bet and flirt should be submitted unless dealing with small images. A script involving a large amount of processing like tbss_3_postreg should always be submitted to a queue.

How do I setup SGE on another computer?

Information on setting up SGE on computers outside of FMRIB is available here and here.

This external link covers configuring SGE for Ubuntu Systems.