diff --git a/EM/Gautomatch/Gautomatch b/EM/Gautomatch/Gautomatch new file mode 100755 index 0000000..c6c0539 --- /dev/null +++ b/EM/Gautomatch/Gautomatch @@ -0,0 +1,6 @@ +#!/bin/sh +# Wrapper for Gautomatch on merlin +module purge +module use EM +module load cuda/8.0.44 Gautomatch/0.56 +exec Gautomatch_v0.56_sm61_cu8.0 "$@" diff --git a/EM/Gautomatch/README b/EM/Gautomatch/README new file mode 100644 index 0000000..47626d0 --- /dev/null +++ b/EM/Gautomatch/README @@ -0,0 +1,10 @@ +# Gautomatch + +## Installation + +1. Download binaries from https://www2.mrc-lmb.cam.ac.uk/research/locally-developed-software/zhang-software/ +2. Update files/variants +3. Run `./build ` to create directories +4. Move all executables to /opt/psi/EM/Gautomatch/$VERSION/bin +5. Create wrapper script at /opt/psi/EM/Gautomatch/$VERSION/bin/Gautomatch based on ./Gautomatch +6. Fix permissions: chmod 755 /opt/psi/EM/Gautomatch/$VERSION/bin/* diff --git a/EM/Gautomatch/build b/EM/Gautomatch/build new file mode 100755 index 0000000..e57a477 --- /dev/null +++ b/EM/Gautomatch/build @@ -0,0 +1,22 @@ +#!/usr/bin/env modbuild + +# Binary distribution with manual installation. See README.md + +pbuild::add_to_group 'EM' + +pbuild::prep() { + : +} + +pbuild::configure() { + : +} + +pbuild::compile() { + : +} + +pbuild::install() { + : +} + diff --git a/EM/Gautomatch/files/variants b/EM/Gautomatch/files/variants new file mode 100644 index 0000000..aa28a19 --- /dev/null +++ b/EM/Gautomatch/files/variants @@ -0,0 +1,2 @@ +Gautomatch/0.53 stable +Gautomatch/0.56 stable diff --git a/EM/Gautomatch/modulefile b/EM/Gautomatch/modulefile new file mode 100644 index 0000000..a98cb7f --- /dev/null +++ b/EM/Gautomatch/modulefile @@ -0,0 +1,14 @@ +#%Module1.0 + +module-whatis "Fully automatic accurate, convenient and extremely fast particle picking for EM" +module-url "https://www2.mrc-lmb.cam.ac.uk/research/locally-developed-software/zhang-software/" +module-license "free" +module-maintainer "Spencer Bliven " + +module-help " +Citation: Kai Zhang. Unpublished + +The `Gautomatch` script in this module includes the correct CUDA dependency. Other +executables need CUDA loaded separately. +" + diff --git a/EM/Gctf/Gctf b/EM/Gctf/Gctf new file mode 100755 index 0000000..a7ddb04 --- /dev/null +++ b/EM/Gctf/Gctf @@ -0,0 +1,6 @@ +#!/bin/sh +# Wrapper for Gctf on merlin +module purge +module use EM +module load cuda/8.0.44 Gctf/1.06 +exec Gctf-v1.06_sm_30_cu8.0_x86_64 "$@" diff --git a/EM/Gctf/README b/EM/Gctf/README new file mode 100644 index 0000000..0958548 --- /dev/null +++ b/EM/Gctf/README @@ -0,0 +1,10 @@ +# GCTF + +## Installation + +1. Download binaries from https://www2.mrc-lmb.cam.ac.uk/research/locally-developed-software/zhang-software/ +2. Update files/variants +3. Run `./build ` to create directories +4. Move all executables to /opt/psi/EM/Gctf/$VERSION/bin +5. Create wrapper script at /opt/psi/EM/Gctf/$VERSION/bin/Gctf based on ./Gctf +6. Fix permissions: chmod 755 /opt/psi/EM/Gctf/$VERSION/bin/* diff --git a/EM/Gctf/build b/EM/Gctf/build new file mode 100755 index 0000000..e57a477 --- /dev/null +++ b/EM/Gctf/build @@ -0,0 +1,22 @@ +#!/usr/bin/env modbuild + +# Binary distribution with manual installation. See README.md + +pbuild::add_to_group 'EM' + +pbuild::prep() { + : +} + +pbuild::configure() { + : +} + +pbuild::compile() { + : +} + +pbuild::install() { + : +} + diff --git a/EM/Gctf/files/variants b/EM/Gctf/files/variants new file mode 100644 index 0000000..86eba3e --- /dev/null +++ b/EM/Gctf/files/variants @@ -0,0 +1,2 @@ +Gctf/0.50 stable +Gctf/1.06 stable diff --git a/EM/Gctf/modulefile b/EM/Gctf/modulefile new file mode 100644 index 0000000..385b609 --- /dev/null +++ b/EM/Gctf/modulefile @@ -0,0 +1,14 @@ +#%Module1.0 + +module-whatis "Real-time CTF determination and correction" +module-url "https://www2.mrc-lmb.cam.ac.uk/research/locally-developed-software/zhang-software/" +module-license "free" +module-maintainer "Spencer Bliven " + +module-help " +Citation: Zhang K. (2016). Gctf: Real-time CTF determination and correction. JSB, 193: 1-12. + +The `Gctf` script in this module includes the correct CUDA dependency. Other +executables need CUDA loaded separately. +" + diff --git a/EM/MotionCor2/README.md b/EM/MotionCor2/README.md index 56886f2..6bd8089 100644 --- a/EM/MotionCor2/README.md +++ b/EM/MotionCor2/README.md @@ -10,12 +10,14 @@ ## Cuda versions -| MotionCor2 | Cuda Versions | -|------------+---------------| -| 1.0.5 | 8.0 9.1 | -| 1.1.0 | 8.0 9.0 9.1 | -| 1.2.0 | 8.0 9.1 9.2 | -| 1.2.6 | 8.0 9.2 10.1 | -| 1.3.0 | 8.0 9.2 10.1 | - +| MotionCor2 | Cuda Versions | +|------------+-------------------------| +| 1.0.5 | 8.0 9.1 | +| 1.1.0 | 8.0 9.0 9.1 | +| 1.2.0 | 8.0 9.1 9.2 | +| 1.2.6 | 8.0 9.2 10.1 | +| 1.3.0 | 8.0 9.2 10.1 | +| 1.3.1 | 9.2 10.1 10.2 | +| 1.3.2 | 8.0 9.2 10.0 10.1 10.2 | +| 1.4.0 | 9.2 10.0 10.1 10.2 11.0 | diff --git a/EM/MotionCor2/build b/EM/MotionCor2/build index cf2204e..b9411f5 100755 --- a/EM/MotionCor2/build +++ b/EM/MotionCor2/build @@ -5,7 +5,7 @@ pbuild::add_to_group 'EM' pbuild::prep() { - cp $BUILDBLOCK_DIR/files/LICENSE $PREFIX/ + : } pbuild::configure() { @@ -17,6 +17,6 @@ pbuild::compile() { } pbuild::install() { - : + cp $BUILDBLOCK_DIR/files/LICENSE $PREFIX/ } diff --git a/EM/MotionCor2/files/variants b/EM/MotionCor2/files/variants index 2218f9d..f871400 100644 --- a/EM/MotionCor2/files/variants +++ b/EM/MotionCor2/files/variants @@ -3,5 +3,8 @@ MotionCor2/1.0.4 stable MotionCor2/1.0.5 stable MotionCor2/1.1.0 stable MotionCor2/1.2.0 stable -MotionCor2/1.2.6 unstable -MotionCor2/1.3.0 unstable +MotionCor2/1.2.6 stable +MotionCor2/1.3.0 stable +MotionCor2/1.3.1 stable +MotionCor2/1.3.2 stable +MotionCor2/1.4.0 stable diff --git a/EM/relion/build b/EM/relion/build index 720a59f..e4e5da2 100755 --- a/EM/relion/build +++ b/EM/relion/build @@ -22,7 +22,9 @@ pbuild::pre_configure() { pbuild::add_configure_args CudaTexture=ON pbuild::add_configure_args ALTCPU=ON pbuild::add_configure_args FORCE_OWN_TBB=ON - # Requires intel compiler - #pbuild::add_configure_args MKLFFT=ON + if [[ -n "$INTEL_VERSION" ]]; then + # Requires intel compiler + pbuild::add_configure_args MKLFFT=ON + fi } diff --git a/EM/relion/files/variants b/EM/relion/files/variants index a15a0e0..c3633bf 100644 --- a/EM/relion/files/variants +++ b/EM/relion/files/variants @@ -3,4 +3,6 @@ relion/3.0_beta stable gcc/4.9.4 openmpi/2.0.1 cuda/8.0.44 relion/3.0.8 stable gcc/7.4.0 openmpi/3.1.4_merlin6 cuda/9.2.148 b:cmake/3.14.0 b:tiff/4.0.9 relion/3.1-beta unstable gcc/7.4.0 openmpi/3.1.4_merlin6 cuda/9.2.148 b:cmake/3.14.0 b:tiff/4.0.9 relion/3.1.0 stable gcc/7.5.0 openmpi/4.0.4_slurm cuda/10.0.130 b:cmake/3.15.5 b:tiff/4.0.9 b:git/2.22.0 +relion/3.1.0-1 unstable gcc/7.5.0 openmpi/4.0.4_slurm cuda/10.1.105 b:cmake/3.15.5 b:tiff/4.0.9 b:git/2.22.0 +relion/3.1.1 unstable gcc/9.3.0 openmpi/4.0.4_slurm cuda/11.0.3 b:cmake/3.15.5 b:tiff/4.0.9 b:git/2.22.0 diff --git a/EM/relion/modulefile b/EM/relion/modulefile index 7dc0903..9adae5c 100644 --- a/EM/relion/modulefile +++ b/EM/relion/modulefile @@ -43,6 +43,5 @@ setenv RELION_GCTF_EXECUTABLE /opt/psi/EM/Gctf/1.06/bin/Gctf setenv RELION_RESMAP_EXECUTABLE /opt/psi/EM/ResMap/1.1.4/bin/ResMap # Version-specific variables -setenv RELION_QSUB_TEMPLATE /opt/psi/EM/relion/3.1-beta/scripts/multi_gpu.sh -setenv RELION_MOTIONCOR2_EXECUTABLE /opt/psi/EM/MotionCor2/1.3.0/bin/MotionCor2_1.3.0-Cuda92 - +setenv RELION_QSUB_TEMPLATE /opt/psi/EM/relion/$V/scripts/multi_gpu.sh +setenv RELION_MOTIONCOR2_EXECUTABLE /opt/psi/EM/MotionCor2/1.4.0/bin/MotionCor2_1.4.0_Cuda110