FreeSurfer: Difference between revisions

Marked this version for translation
No edit summary
(Marked this version for translation)
Line 1: Line 1:
<languages />
<languages />
<translate>
<translate>
=Introduction=
=Introduction= <!--T:1-->
[https://surfer.nmr.mgh.harvard.edu/fswiki/FreeSurferWiki FreeSurfer] is a set of tools for analysis and visualization of structural and functional brain imaging data. FreeSurfer contains a fully automatic structural imaging stream for processing cross sectional and longitudinal data.
[https://surfer.nmr.mgh.harvard.edu/fswiki/FreeSurferWiki FreeSurfer] is a set of tools for analysis and visualization of structural and functional brain imaging data. FreeSurfer contains a fully automatic structural imaging stream for processing cross sectional and longitudinal data.


=FreeSurfer 5.3 as a global module=
=FreeSurfer 5.3 as a global module= <!--T:2-->
In the Compute Canada software stack, you may load the <code>freesurfer/5.3.0</code> module.  
In the Compute Canada software stack, you may load the <code>freesurfer/5.3.0</code> module.  


<!--T:3-->
FreeSurfer come up with a script <code>FreeSurferEnv.sh</code> that should be sourced to setup correctly the environment variables such as PATH and PERL5LIB:
FreeSurfer come up with a script <code>FreeSurferEnv.sh</code> that should be sourced to setup correctly the environment variables such as PATH and PERL5LIB:
</translate>
</translate>
Line 14: Line 15:
}}
}}
<translate>
<translate>
=FreeSurfer 6.0 and newer versions=
=FreeSurfer 6.0 and newer versions= <!--T:4-->
Due to a change in the [https://surfer.nmr.mgh.harvard.edu/fswiki/FreeSurferSoftwareLicense license terms], we '''now longer''' install the code as a central module. If needed, please install it in your home directory or in your project space with EasyBuild. Please follow the instructions below and if needed, contact the [[Technical Support|technical support]] for more assistance.  
Due to a change in the [https://surfer.nmr.mgh.harvard.edu/fswiki/FreeSurferSoftwareLicense license terms], we '''now longer''' install the code as a central module. If needed, please install it in your home directory or in your project space with EasyBuild. Please follow the instructions below and if needed, contact the [[Technical Support|technical support]] for more assistance.  


==Download the software==
==Download the software== <!--T:5-->
Select a version (6.0.0 or newer) in the [https://surfer.nmr.mgh.harvard.edu/pub/dist/freesurfer/ download repository], and download the corresponding <code>freesurfer-Linux*vX.Y.Z.tar.gz</code> archive on your favorite cluster.
Select a version (6.0.0 or newer) in the [https://surfer.nmr.mgh.harvard.edu/pub/dist/freesurfer/ download repository], and download the corresponding <code>freesurfer-Linux*vX.Y.Z.tar.gz</code> archive on your favorite cluster.


==Installation in your Home with Easybuild==
==Installation in your Home with Easybuild== <!--T:6-->
The following procedure will install FreeSurfer 6.0.0 in your home directory in <code>/home/$USER/.local/easybuild/software/2017/Core/freesurfer/6.0.0/</code>. The installation of Freesurfer require some memory and due to the restrictions of memory stack size on the login nodes on Compute Canada clusters, the installation may fail because of the memory. To overcome this issue, you may need to use [[Running_jobs#Interactive_jobs|interactive job]] by asking for enough memory (8 GB or so) to install the code.  
The following procedure will install FreeSurfer 6.0.0 in your home directory in <code>/home/$USER/.local/easybuild/software/2017/Core/freesurfer/6.0.0/</code>. The installation of Freesurfer require some memory and due to the restrictions of memory stack size on the login nodes on Compute Canada clusters, the installation may fail because of the memory. To overcome this issue, you may need to use [[Running_jobs#Interactive_jobs|interactive job]] by asking for enough memory (8 GB or so) to install the code.  


<!--T:7-->
# Go to the folder that contains the <code>freesurfer-Linux-centos6_x86_64-stable-pub-v6.0.0.tar.gz</code> archive
# Go to the folder that contains the <code>freesurfer-Linux-centos6_x86_64-stable-pub-v6.0.0.tar.gz</code> archive
# Unload all modules: <code>module purge</code>
# Unload all modules: <code>module purge</code>
Line 34: Line 36:
}}
}}
<translate>
<translate>
<!--T:8-->
Use nano or any other text editor of your choice and create a file <code>/home/$USER/.license</code> and add the license text (example):
Use nano or any other text editor of your choice and create a file <code>/home/$USER/.license</code> and add the license text (example):
</translate>
</translate>
Line 43: Line 46:
</pre>
</pre>
<translate>
<translate>
<!--T:9-->
To load the private module:  
To load the private module:  
<code>module load freesurfer/6.0.0</code>
<code>module load freesurfer/6.0.0</code>


<!--T:10-->
When this page was created, Compute Canada was supporting up to version 6.0.1. You can check for [https://github.com/ComputeCanada/easybuild-easyconfigs/tree/computecanada-master/easybuild/easyconfigs/f/FreeSurfer newer versions here].
When this page was created, Compute Canada was supporting up to version 6.0.1. You can check for [https://github.com/ComputeCanada/easybuild-easyconfigs/tree/computecanada-master/easybuild/easyconfigs/f/FreeSurfer newer versions here].


==Checking the easybuild recipes for freesurfer==
==Checking the easybuild recipes for freesurfer== <!--T:11-->
You can check the easybuild recipes for freesurfer [https://github.com/ComputeCanada/easybuild-easyconfigs/tree/computecanada-master/easybuild/easyconfigs/f/FreeSurfer online] on GitHub or via a command line ,<code>eb -S FreeSurfer</code>, from any Compute Canada cluster. If the version you are looking for is not listed, you may try to install the program with the option <code>--try-software-version=<the new version></code>. If that did not work, please contact the [[Technical support/en|technical support]] for help.
You can check the easybuild recipes for freesurfer [https://github.com/ComputeCanada/easybuild-easyconfigs/tree/computecanada-master/easybuild/easyconfigs/f/FreeSurfer online] on GitHub or via a command line ,<code>eb -S FreeSurfer</code>, from any Compute Canada cluster. If the version you are looking for is not listed, you may try to install the program with the option <code>--try-software-version=<the new version></code>. If that did not work, please contact the [[Technical support/en|technical support]] for help.


==Installation in a shared folder==
==Installation in a shared folder== <!--T:12-->
Using EasyBuild, it is possible to install the program in a shared location (like project) and make the code available for any other member of the group. The following will install freesurfer under the project <code>def-someuser</code> under the directory <code>/home/$USER/projects/def-someuser/$USER/software</code> and the module under the user's directory <code>/home/$USER/.local/easybuild/modules/2017/Core/freesurfer</code>.  
Using EasyBuild, it is possible to install the program in a shared location (like project) and make the code available for any other member of the group. The following will install freesurfer under the project <code>def-someuser</code> under the directory <code>/home/$USER/projects/def-someuser/$USER/software</code> and the module under the user's directory <code>/home/$USER/.local/easybuild/modules/2017/Core/freesurfer</code>.  


<!--T:13-->
The instructions are:
The instructions are:
</translate>
</translate>
Line 64: Line 70:
</pre>
</pre>
<translate>
<translate>
<!--T:14-->
If it complains about '''checksums''', add the option <code>--disable-enforce-checksums</code> to the <code>eb</code> command.
If it complains about '''checksums''', add the option <code>--disable-enforce-checksums</code> to the <code>eb</code> command.


<!--T:15-->
To make the program accessible for all members of the group, two more steps are required:
To make the program accessible for all members of the group, two more steps are required:


<!--T:16-->
* You need to give all members of your group read and exec access to the installation directory <code>/home/$USER/projects/def-someuser/$USER</code>. To see how to give them access to this directory, please visit the [[Sharing data/en|data sharing]] page.
* You need to give all members of your group read and exec access to the installation directory <code>/home/$USER/projects/def-someuser/$USER</code>. To see how to give them access to this directory, please visit the [[Sharing data/en|data sharing]] page.
* Each member of the group will need to put the module file in their own home directories. The module file <code>6.0.1.lua</code> is located under the directory:  
* Each member of the group will need to put the module file in their own home directories. The module file <code>6.0.1.lua</code> is located under the directory:  
Line 74: Line 83:
</pre>
</pre>


<!--T:17-->
Each member of the group will need to create the directory <code>/home/$USER/.local/easybuild/modules/2017/Core/freesurfer</code> and put the file <code>6.0.1.lua</code>:
Each member of the group will need to create the directory <code>/home/$USER/.local/easybuild/modules/2017/Core/freesurfer</code> and put the file <code>6.0.1.lua</code>:
</translate>
</translate>
Line 81: Line 91:
}}
}}
<translate>
<translate>
<!--T:18-->
The above will set the module (only the module file that points to the installation directory under project) in their own directory.
The above will set the module (only the module file that points to the installation directory under project) in their own directory.


<!--T:19-->
The module can be loaded from their own accounts using:
The module can be loaded from their own accounts using:


<!--T:20-->
{{Commands
{{Commands
|module load freesurfer/6.0.1
|module load freesurfer/6.0.1
}}
}}


==Hippocampus and brainstem processing==
==Hippocampus and brainstem processing== <!--T:21-->
To perform processing of the hippocampus and brainstem, download and install matlab runtime 2012b from the freesurfer website:
To perform processing of the hippocampus and brainstem, download and install matlab runtime 2012b from the freesurfer website:
</translate>
</translate>
Line 99: Line 112:
</pre>
</pre>
<translate>
<translate>
==Example of working batch script for freesurfer version >= 6.0.0==
==Example of working batch script for freesurfer version >= 6.0.0== <!--T:22-->
</translate>
</translate>
{{File
{{File
Line 127: Line 140:
}}
}}
<translate>
<translate>
==Examples of required walltimes==
==Examples of required walltimes== <!--T:23-->


<!--T:24-->
* recon-all -all : <code>#SBATCH --time=08:00:00</code>
* recon-all -all : <code>#SBATCH --time=08:00:00</code>
* recon-all -qcache : <code>#SBATCH --time=00:20:00</code>
* recon-all -qcache : <code>#SBATCH --time=00:20:00</code>
Bureaucrats, cc_docs_admin, cc_staff
2,309

edits