These instructions are tailored for the environment on the "numbers" cluster using:
- MATLAB R2016a installed at
/gsc/software/linux-x86_64-centos6/matlab-r2016a/ - No need for a license (i.e. activation code) after compiling — thanks to the MATLAB Runtime (MCR)
- Cluster jobs should call
run_JSIT.sh, not the binary directly
From the directory /path/to/JSIT where JSIT.m is located, run:
/gsc/software/linux-x86_64-centos6/matlab-r2016a/bin/mcc -m JSIT_preproc_wrapper.mUsers should use JSIT_preproc_wrapper.m because JSIT expects some kind of fiducial alignment and preprocessing. Ignore JSIT_raw_wrapper.m.
This will generate the following files:
JSIT— the compiled executableJSIT.ctf— compressed code archive (required at runtime)run_JSIT_preproc_wrapper.sh— helper script to run with MATLAB Runtime- Other supporting files like
readme.txtandrequiredMCRProducts.txt
Make sure
JSIT.ctfis in the same directory asJSITandrun_JSIT_preproc_wrapper.sh.
The compiled binary requires the MATLAB Runtime (MCR) to be available.
Use this setup if calling JSIT manually:
export MCRROOT=/gsc/software/linux-x86_64-centos6/matlab-r2016a
export LD_LIBRARY_PATH=$MCRROOT/v901/runtime/glnxa64:\
$MCRROOT/v901/bin/glnxa64:\
$MCRROOT/v901/sys/os/glnxa64:\
$MCRROOT/v901/sys/opengl/lib/glnxa64:$LD_LIBRARY_PATHThese are set automatically when using
run_JSIT_preproc_wrapper.sh— no need to export manually in SLURM.
Run the program using:
/path/to/JSIT/run_JSIT_preproc_wrapper.sh /gsc/software/linux-x86_64-centos6/matlab-r2016a \
/path/to/aligned_images_{fov:03}_{z:02}.tiff.mat \
/path/to/codebook.mat \
/path/to/output_folder_{fov:03}_{z:02}- Argument 1: path to MCR (always
/gsc/software/linux-x86_64-centos6/matlab-r2016a) - Argument 2:
.tiff.matinput file - Argument 3: codebook
.matfile - Argument 4: output folder (must exist or be creatable)
- Do not run
./JSITdirectly — userun_JSIT_preproc_wrapper.sh - You do not need a MATLAB license to run after compilation
- Make sure all input/output paths are accessible from compute nodes
- If you see a
CTF not founderror, make sureJSIT.ctfis in the same directory asJSIT
Example code to run JSIT.m without compiling (using a MATLAB interpreter)
/gsc/software/linux-x86_64-centos6/matlab-r2016a/bin/matlab -nodisplay -nosplash -r "JSIT(/path/to/aligned_images_{fov:03}_{z:02}.tiff.mat', /path/to/codebook.mat, /path/to/output_folder_{fov:03}_{z:02}); quit;"