ASC18三维重构软件Relion的测试安装

Relion安装依赖cmake,fftw以及fltk

$ sudo apt install cmake build-essential mpi-default-bin mpi-default-dev 
libfftw3-dev

如果在使用relion中,需要用到GPU进行加速的话,需要安装CUDA和cuDNN。
在编译relion时,gcc、g++和CUDA版本的选择也有讲究,

以Ubuntu16.04为例,系统安装后自带的gcc、g++版本是5.4.0,对应于CUDA8以后的版本。
可以通过下面的命令查看自己linux系统的gcc、g++版本

$ gcc --version
$ g++ --version

如果是CUDA7.5,那么gcc、g++的版本是4.9及之前版本

以gcc4.8为例,想要升级到gcc5.4,那么可以这样做
1.用apt安装gcc-5.4

$ sudo apt install gcc-5

2.查看默认的gcc版本

$ gcc --version

3.查看当前已有的gcc版本, 确认下刚刚的gcc5.4是否已经成功安装

$ ls /usr/bin/gcc*

4.将某个版本加入gcc候选中,最后的数字是优先级(可改)

$ sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-5.4 100

5.用此方法配置多个gcc版本

$ sudo update-alternatives --config gcc

6.这时,再次查看gcc默认版本就可以看到已经改到我们想要的gcc版本了。
g++版本的切换和gcc的步骤大同小异,这里便不再过多赘述。

解决了CUDA版本和gcc版本的兼容性问题后,我们便可以进行下一步了。

用git远程下载代码

$ git clone https://github.com/3dem/relion.git

没有安装git的可以先安装git或者直接从github上下载

$ sudo apt install git

接下来,我们着手编译relion

$ cd relion
$ mkdir build
$ cd build
$ cmake -DGUI=ON -DDoublePrec_GPU=ON -DCUDA_ARCH=50 -DFORCE_OWN_FFTW=ON -DFORCE_OWN_FLTK=ON -DCMAKE_INSTALL_PREFIX=/usr/local/relion ..

-DGUI=ON:开启GUI,-DGUI=OFF:关闭GUI

-DDoublePrec_GPU=ON:在GPU上使用双精度。除非你有专业的GPU,否则这将会大幅降低GPU的执行速度。

-DCUDA_ARCH=50:为你的架构编译GPU代码。支持CUDA的设备有一个所谓的计算版本,可以编译代码以获得最佳性能。如果你知道GPU的计算-版本,则可以指定。默认值是3.5(CUDA Capability Major/Minor version number)

-DFORCE_OWN_FFTW=ON -DFORCE_OWN_FLTK=ON:强制建立和使用本地fftw和fltk-libs,这将在安装过程中添加下载,验证和安装。

-DCMAKE_INSTALL_PREFIX=/usr/local/relion:指定relion安装路径。

以上,部分选项可以不显式指出。

接着,

$ make -j

make -j 进行编译,如果有错误提示"memcpy not in scope"等错误信息。

在relion目录下CMakeLists.txt文件中添加

set((CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -D_FORCE_INLINES")

ASC18三维重构软件Relion的测试安装_第1张图片

添加完成后,cd进入build目录,删除CMakeCache.txt,重新编译

$ cd build
$ rm CMakeCache.txt
$ cmake -DGUI=ON -DDoublePrec_GPU=ON -DCUDA_ARCH=50 -DFORCE_OWN_FFTW=ON -DFORCE_OWN_FLTK=ON -DCMAKE_INSTALL_PREFIX=/usr/local/relion ..
$ make -j

如果遇到下载超时的情况,可能需要。

最后,安装relion

$ sudo make install

relion安装成功后,可以将其添加到环境变量中。

$ cd ~
$ vim .bashrc

添加内容如下:

# added by Relion installer
export PATH="$PATH:/usr/local/relion/bin"

relion GUI界面显示如下:
ASC18三维重构软件Relion的测试安装_第2张图片
用Relion跑冷冻电镜数据,UCSF Chimera可以查看其模型
ASC18三维重构软件Relion的测试安装_第3张图片

你可能感兴趣的:(HPC)