The CSF2 has been replaced by the CSF3 - please use that system! This documentation may be out of date. Please read the CSF3 documentation instead. To display this old CSF2 page click here. |
FSL
Overview
FSL is a comprehensive library of analysis tools for FMRI, MRI and DTI brain imaging data.
Versions 5.0.7, 5.0.9 & 5.0.10 are available on the CSF.
Due to an increasing use of python modules version 5.0.10 has it’s own miniconda-based python distribution ( named fslpython
) installed.
Restrictions on use
This software requires that users are added to a unix group to access it. Requests for access should be directed to its-ri-team@manchester.ac.uk.
All users MUST read and agree to the FSL license before they can be added to the unix group. The information below provides some guidance, but is not a substitute for the license:
What may FSL be used for?
You may use FSL only for academic research purposes.
What may FSL not be used for?
The licence is for non-commercial use only. The license defines this as “Use for which any financial return is received” and includes:
“
- integration of all or part of the source code or the Software into a product for sale or license by or on behalf of Licensee to third parties or
- use of the Software or any derivative of it for research with the final aim of developing software products for sale or license to a third party or
- use of the Software or any derivative of it for research with the final aim of developing non-software products for sale or license to a third party, or
- use of the Software to provide any service to an external organisation for which payment is received.”
How should the program be cited?
To quote the relevant references for FSL tools in publications you should look in the individual tools’ manual pages, and also reference one or more of the FSL overview papers as detailed on the FSL website.
You are not permitted to use freesurfer logos and associated trademarks.
Modifications, reproduction, transmission and transference of the software
This is prohibited without express permission from the University of Oxford exept where there is no finanical return provided the terms of the license are imposed on the receiver and all orginal and amended source code is included in the transmitted product.
Risks
The University is required to indemnify The University of Oxford against all claims, damage and liabilites asserted by Third Parties which arise directly or indirectly from the use of the Software or sale of any produce based on the Software.
Please therefore be aware of and comply with the licence agreement and discuss anything that is unclear with your line management in the first instance to obtain further guidance.
Set up procedure
To access the software you must first load one of the modulefiles:
module load apps/binapps/fsl/5.0.10 module load apps/binapps/fsl/5.0.9 module load apps/binapps/fsl/5.0.7
Running the application
Some FSL executables (e.g., bedpostx) are run on the login node because they will automatically submit batch jobs for you. Others should be submitted to batch in the usual ways (write a jobscript). Please ensure the processing performed by your FSL app is ultimately done in the batch system (on compute nodes), not the login node.
You should consider using qrsh for some of the setup steps.
A list of the components that can be used with the batch system, SGE, can be found on the FSL website – please note, they have not all been tested on the CSF.
fslpython
(Version 5.0.10) has not had any special configuration added to the modulefile. It can be accessed at the following path $FSLDIR/fslpython
.
Serial batch job submission
You do not need to write the usual batch submission script for some FSL tools. They submit automatically to batch for you when you reach the right stage in your setup. For example the command tbss_2_reg
submits a serial job array while melodic
can submit from the GUI (when you press Go
) and will split each stage up into separate jobs. The bedpostx
tool will submit three batch jobs – a preprocessing job, a job array to do the main processing then a post-processing job.
All FSL jobs will go to the main 7 day pool of serial cores that have 4GB per core of memory. It is not possible to add flags to request specific things such as highmem, sandybridge, short etc.
Note: Please consider this software to be still undergoing testing. Depending on what commands you are using you may find that jobs fail or do not submit. If this is the case it may indicate that some configuration is still required. Please report problems to the CSF Team via its-ri-team@manchester.ac.uk.
Parallel batch job submission
As noted above, some FSL tools will automatically submit jobs to the batch system. Hence you do not need to write a jobscript for those tools. Instead you run the commands directly on the CSF login node and batch jobs will be submitted on your behalf. Other tools do require a jobscript and are submitted to the batch system in the usual way.
We have tested the bedpostx
command so far. This submits a number of jobs: an initial serial pre-processing job, a job-array to process multiple input files (data slices) in parallel and then a final serial post-processing job. The parallelism comes from the job array. This runs many copies of the executable to processes many input files. Each individual executable is a serial (1-core) program but the fact that many (hundreds) of them can be running in parallel to process all of your data slices gives you a speed-up in your processing.
The following example should be run on the CSF login node.
# After loading the appropriate modulefile (see above)... # Now run bedpostx on the login node - it will submit jobs for you bedpostx ~/scratch/data/subject_directory -n 1 -w 1 -b 1000 -c # # # # Turn off checking for GPU support # # (not currently available on CSF) # Change to suit your requirements qstat # # You should see three jobs queued
Documenting the flags passed to bedpostx
is beyond the scope of this document – you should read the FSL manual (see below) for how to run bedpostx
and for a description of the data files required. For a summary of the options run on the login node:
module load apps/binapps/fsl/6.0.0
Further info
Updates
FSL 5.0.9 installed in Oct 2016 with a patched version of eddy_openmp
as per above note.