Benchmarks & computer hardware: Difference between revisions

From Relion
Jump to navigation Jump to search
Line 37: Line 37:
Depending on your system, you may want to investigate the usage of the following options. TODO: elaborate...
Depending on your system, you may want to investigate the usage of the following options. TODO: elaborate...


* --j
* --j
* --dont_combine_weights_via_disc
* --dont_combine_weights_via_disc
* --gpu
* --gpu
* --pool
* --pool
* --no_parallel_disc_io
* --no_parallel_disc_io
* --preread_images
* --preread_images
* --scratch_dir
* --scratch_dir


= Computer hardware options =
= Computer hardware options =

Revision as of 13:09, 5 October 2016

Standard benchmarks

With the addition of GPU-acceleration to release 2.0, standard benchmarks to compare the performance of new hardware has become more necessary than ever. Therefore, we suggest the following standard tests on the Plasmodium ribosome data set presented in Wong et al, eLife 2014:

ascp -QT -l 2G -i ~/.aspera/connect/etc/asperaweb_id_dsa.openssh emp_ext@fasp.ebi.ac.uk:archive/10028/data/Particles .
wget ftp://ftp.ebi.ac.uk/pub/databases/emdb/structures/EMD-2660/map/emd_2660.map.gz .
gunzip emd_2660.map.gz

2D classification

Run the (mpi-version of) the relion_refine program with the following command line arguments:

--i Particles/shiny_2sets.star --ctf --iter 25 --tau2_fudge 2 --particle_diameter 360 --K 200 --zero_mask --oversampling 1 --psi_step 6 --offset_range 5 --offset_step 2 --norm --scale --random_seed 0 --o class2d

3D classification

Run the (mpi-version of) the relion_refine program with the following command line arguments:

--i Particles/shiny_2sets.star --ref emd_2660.map:mrc --firstiter_cc --ini_high 60 --ctf --ctf_corrected_ref --iter 25 --tau2_fudge 4 --particle_diameter 360 --K 6 --flatten_solvent --zero_mask --oversampling 1 --healpix_order 2 --offset_range 5 --offset_step 2 --sym C1 --norm --scale --random_seed 0 --o class3d

3D auto-refine

Run the mpi-version of the relion_refine program with the following command line arguments:

--i Particles/shiny_2sets.star --ref emd_2660.map:mrc --firstiter_cc --ini_high 60 --auto_refine --split_random_halves --low_resol_join_halves 40 --ctf --ctf_corrected_ref --iter 25 --tau2_fudge 4 --particle_diameter 360 --flatten_solvent --zero_mask --oversampling 1 --healpix_order 2 --auto_local_healpix_order 4 --offset_range 5 --offset_step 2 --sym C1 --norm --scale --random_seed 0 --o refine3d

Options to play with

Depending on your system, you may want to investigate the usage of the following options. TODO: elaborate...

  • --j
  • --dont_combine_weights_via_disc
  • --gpu
  • --pool
  • --no_parallel_disc_io
  • --preread_images
  • --scratch_dir

Computer hardware options

Relion will run on any Linux-like machine, most typically on CPU/GPU clusters, or on GPU desktop (gamer-like) machines. A minimum of 64 GB of RAM is recommended to run relion.

Our collaborator in Stockholm, Erik Lindahl, has made a useful blog with GPU hardware recommendations. Briefly, you'll need an NVIDIA GPU with a CUDA compute ability of at least 3.0, but you don't need the expensive double-precision NVIDIA cards, i.e. the high-end gamer cards will also do, but do see Erik's blog for details! Note that 3D auto-refine will benefit from 2 GPUs, while 2D and 3D classification can be run just as well with 1 GPU. Apart from your GPUs you'll need a decent amount of RAM on the CPU (at least 64Gb), and you may also benefit from a fast (e.g. a 400Gb SSD!) scratch disk, especially of your working directories will be mounted over the network connecting multiple machines.