AMICO

Overview

AMICO (Accelerated Microstructure Imaging via Convex Optimization) is a python module to accelerate the existing techniques for processing diffusion magnetic resonance (MR) data drastically (up to four orders of magnitude faster) while preserving accuracy and precision in the estimated model parameters (correlation above 0.9).

Version 1.0.2 is installed on the CSF.

Restrictions on use

There are no restrictions on accessing this software on the CSF. You should cite your usage of the software using:

Accelerated Microstructure Imaging via Convex Optimization (AMICO) from diffusion MRI data
Alessandro Daducci, Erick Canales-Rodriguez, Hui Zhang, Tim Dyrby, Daniel Alexander, Jean-Philippe Thiran
NeuroImage 105, pp. 32-44 (2015)

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/python/amico/1.0.2

This will load automatically the Anaconda python modulefile (provides python 3.6.5), the CAMINO (java app) modulefile and the SPAMS (python package) modulefile, all of which are dependencies of AMICO.

Running the application

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

Your python scripts should use:

import amico

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/python/amico/1.0.2

python my_script.py

Submit the jobscript using:

qsub scriptname

where scriptname is the name of your jobscript.

Parallel 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
#$ -pe smp.pe 8     # Number of cores. Can be 2--32.
                    # NO -V line - we load modulefiles in the jobscript

module load apps/python/amico/1.0.2

# Specify how many cores are available. $NSLOTS is set to the number given above.
export OMP_NUM_THREADS=$NSLOTS

python my_script.py

Submit the jobscript using:

qsub scriptname

where scriptname is the name of your jobscript.

Further info

Updates

None.

Last modified on December 9, 2019 at 4:27 pm by George Leaver