crYOLO¶
crYOLO is an application for fast and accurate cryo-EM particle picking.
crYOLO is available as a module on Apocrita.
Usage¶
To run the default installed version of crYOLO, simply load the cryolo
module:
module load cryolo
Since crYOLO runs from a container, you need to run cryolo
and then the
command you wish to run, e.g.:
cryolo cryolo_train.py -h
crYOLO Graphical User Interface
The main crYOLO Graphical User Interface (cryolo_gui.py
) is available when
the cryolo
module is loaded. However we strongly suggest users use a
job script for training and analysis, then use an
Open OnDemand Desktop Environment
session to visualise results using
napari_boxmanger
.
Example job¶
crYOLO expects a GPU for training and analysis
crYOLO training and analysis should be run on a GPU node, as it relies on CUDA libraries for these workflows.
GPU job¶
Here is an example job running on 1 GPU, using the crYOLO reference example:
#!/bin/bash
#$ -cwd
#$ -j y
#$ -pe smp 8
#$ -l h_rt=240:0:0
#$ -l h_vmem=11G
#$ -l gpu=1
module load cryolo
# Run training
cryolo cryolo_train.py \
-c config_phosnet.json \
-w 5 \
-e 5 \
-g 0
# Run prediction
cryolo cryolo_predict.py \
-c config_phosnet.json \
-w model.h5 \
-i unseen_examples/ \
-o my_results
Visualising results¶
The example job produces the following output in the defined output directory
"my_results
":
$ ls -1 my_results
CBOX
CRYOSPARC
DISTR
EMAN
STAR
You can visualise these results in an Open OnDemand Desktop Environment session.
Use a CPU Desktop Environment session where possible
The crYOLO Napari boxmanager can run on CPU or GPU nodes. To avoid queueing, use a CPU Desktop Environment session for smaller visualisations and only use a GPU node for larger visualisations.
Once in the Desktop Environment session, load the cryolo
module and the
Napari boxmanager
(napari_boxmanager
) will be added to your path. To use it run a command such
as:
napari_boxmanager 'unseen_examples/*.mrc' 'my_results/CBOX/*.cbox'
in the terminal window that appears. The defined results path will load in the Napari graphical user interface: