emready on Biowulf
Improving the quality and interpretability of cryo-EM maps by local and non-local deep learning.
References:
- He J, Li T, Huang S-Y.* Improvement of cryo-EM maps by simultaneous local and non-local deep learning. Nature Communications, 2023;14:3217 Journal
Documentation
- emready doc:doc
Important Notes
- Module Name: emready (see the modules page for more information)
- The emready (available on biowulf) command lines could be run as:
EMReady.sh in_map.mrc out_map.mrc [Options]
- emready testing input in $EMREADY_TEST_DATA
Interactive job
Interactive jobs should be used for debugging, graphics, or applications that cannot be run as batch jobs.
Allocate an interactive session and run the program.
Sample session (user input in bold):
[user@biowulf]$ sinteractive --gres=gpu:v100:1 --mem=20g salloc.exe: Pending job allocation 46116226 salloc.exe: job 46116226 queued and waiting for resources salloc.exe: job 46116226 has been allocated resources salloc.exe: Granted job allocation 46116226 salloc.exe: Waiting for resource configuration salloc.exe: Nodes cn3144 are ready for job [user@cn3144]$ module load emready [user@cn3144]$ mkdir /data/$USER/emready_test/ [user@cn3144]$ cd /data/$USER/emready_test/ [user@cn3144]$ cp $EMREADY_TEST_DATA/*.mrc . [user@cn3144]$ EMReady.sh EMReady.sh USAGE: EMReady.sh in_map.mrc out_map.mrc [options] Descriptions: in_map.mrc : Input EM density map in MRC2014 format out_map.mrc : Filename of the output processed density map -g : ID(s) of GPU devices to use. e.g. '0' for GPU #0, and '2,3,6' for GPUs #2, #3, and #6 default: '0' -s : The step of the sliding window for cutting the input map into overlapping boxes. Its value should be an integer within [12, 48]. A smaller stride means a larger number of overlapping boxes default: '12' -b : Number of boxes input into EMReady in one batch. Users can adjust 'batch_size' according to the VRAM of their GPU devices. Empirically, a GPU with 40 GB VRAM can afford a 'batch_size' of 30 default: '10' --use_cpu : Run EMReady on CPU instead of GPU [user@cn3144]$ EMReady.sh emd_22216.mrc emd_22216.out.mrc # Running on 1 GPU(s) # Loading pre-trained model... # Voxel size of input map: [1.666 1.666 1.666] # Using the EMReady model with grid size of 1.0 Angstrom # Loading map data... # Rescale voxel size from [1.666 1.666 1.666] to [1. 1. 1.] # Map dimensions: [265 265 265] # Split map into 12167 chunk(s) # Get 12167 positive chunks # Start prediction [user@cn3144]$ exit salloc.exe: Relinquishing job allocation 46116226 [user@biowulf]$
Batch job
Most jobs should be run as batch jobs.
Create a batch input file (e.g. emready.sh). For example:
#!/bin/bash
set -e
module load emready
cp $EMREADY_TEST_DATA/*.mrc .
EMReady.sh emd_22216.mrc emd_22216.out.mrc -b 20 -g '0,1'
Submit this job using the Slurm sbatch command.
sbatch --gres=gpu:v100:2 --mem=40g emready.sh