应用介绍
RELION(REgularised LIkelihood OptimisatioN) 是一个用于低温电子显微镜(cryo-EM)结构确定的独立软件包,采用经验贝叶斯方法。这个项目在Sjors Scheres领导的MRC分子生物学实验室开发。RELION是基于GPLv2许可证分发的,保证了其开放性,适用于包括商业用途在内的所有场景。核心编程语言主要是 C++, 同时包含了一定比例的 CUDA、C 和少量的 Python、CMake 及其他辅助技术。
关键技术和框架
低温电子显微镜(cryo-EM) 技术处理。
贝叶斯优化算法 用于3D重建和2D类平均的最大后验概率(Maximum A Posteriori, MAP)精炼。
MPI (Message Passing Interface) 支持并行计算,提升处理速度。
FFTW (Fastest Fourier Transform in the West) 库用于快速傅里叶变换,关键在于图像处理。
集成了 FLTK 图形界面库以提供用户交互体验。
利用 CMake 进行构建系统管理,简化跨平台编译安装过程。
提交作业
准备作业脚本run.sh,内容如下:
#!/bin/bash
#SBATCH --job-name=relion_job
#SBATCH --nodes=1
#SBATCH --ntasks-per-node=4
#SBATCH --output=%j.out
#SBATCH --error=%j.err
## 加载环境变量
export PATH=/opt/app/gcc/9.5.0_gcc4.8.5/bin:$PATH
export LD_LIBRARY_PATH=/opt/app/gcc/9.5.0_gcc4.8.5/lib64:$LD_LIBRARY_PATH
export PATH=/opt/app/cuda/current/bin:/opt/app/nvidia/current/bin:$PATH
export CUDA_PATH=/opt/app/cuda/current
source /opt/intel/oneapi/setvars.sh
export PATH=/opt/app/relion/5.0/bin:$PATH
export LD_LIBRARY_PATH=/opt/app/fftw/3.3.10/lib:$LD_LIBRARY_PATH
### 示例命令
mpirun -n 4 relion_motion_refine_mpi --help
- relion_motion_refine_mpi --help 可以换成自己的命令
使用sbatch run.sh
命令提交作业。
常见问题
Q:提交作业时遇到如下错误?

A: 在作业脚本中添加申请gpu的命令