Virtual Neuro Machine�
Project kick-off (better late than never)
17/6/2020
Project leader: �Oren Civier� �Swinburne Neuroimaging
Swinburne University of Technology
ocivier@swin.edu.au
Two possible implementations of VNM:
“master” container
* “library” of containers
Graphical interface
Interactive processing
Software and
working environment�in a single container
Work env. FSL
SPM
ANTs
Graphical interface
Interactive processing
Each software has its container
Working environment in a container
FSL
SPM
ANTs
Work env.
CVL project’s
Library
Some things are common to the two implementations:
Task 1 – Working environment
What is included in the working environment?�
1.1 GUI menu for launching graphical apps
- “master” container: Runs a graphical app from a specific package
- * “Library” of containers: Download the container, and run the graphical app from within it�
1.2 Scripting tools (shells, python, jupyter, MATLAB, octave, etc.)
1.2.1 A tool to let users load a personal MATLAB license (consult with @orenciv)
1.2.2 A tool to let connect to a site MATLAB license (consult with @sbollmann_mri)�
1.3 Tools to connect to storage (sshfs, gpfs, XNAT, etc.)
1.3.1 sshfs: possibly graphical tools like available in UBUNTU (consult with @orenciv)
1.3.2 XNAT: can be part of the Australian AIS project (consult with @orenciv)
1.3.3 gpfs: ? (consult with @sbollmann_mri)
Task 1 – cont. GUI menu
Task 2 – Testing the containers
Testing is important both for “master” container and “library” of containers.
2.1 Choose the source of testing pipelines (python). Need pipelines that are freely available and their output is known.
2.2 Choose a source of MATLAB testing pipelines.
2.3 Choose the testing tool from many available.
2.4 Prepare scripts that users of the container(s) can run on their own, � as graphics might need to be tested in the actual environment.�
2.5 Incorporate into continuous integration, � to test things when building the container/s.
Task 2 – cont. Source of testing pipelines
NeuroLibre – collection of pipelines in Jupyter books with data and outputs�(One of the other projects in Hackathon, BrainIAK uses it. Can consult with @manojneuro)
TestKraken – tool for systematic testing�(can consult with @kaczmarj ?)
Task 3 – Adding recipes to neurodocker
Task 3 – cont. Expending neurodocker
3.1 A list of packages that will be useful to add� (do homework + consult with me and @sbollmann_mri)��3.2 Clonning neurodocker and adding packages � (writing and testing install scripts)
�3.3 Pull requests on neurodocker to incorporate new packages��3.4 Script to generate “master” container (consult with me)�
3.5 * Scripts to generate stand-alone versions of applications� https://github.com/CAIsr/caid (consult with @sbollmann_mri)
Assign people to tasks