本家様 http://sphire.mpg.de/wiki/doku.php?id=gpu_isac
ISAC (Iterative Stable Alignment and Clustering) is a 2D classification algorithm.
It sorts a given stack of cryo-EM particles into different classes that share the same view of a target protein.
ISAC is based around iterations of alternating equal size k-means clustering and repeated 2D alignment routines.
(deepL様翻訳)
ISAC(Iterative Stable Alignment and Clustering)は、2次元分類アルゴリズムである。
与えられた低温電子顕微鏡粒子のスタックを、ターゲットタンパク質の同じビューを共有する異なるクラスにソートする。
ISACは、等しいサイズのk-meansクラスタリングと2Dアライメントルーチンを交互に繰り返し行うことに基づいています。
SPHIRE のadd-onになるのですが、SPHIRE はeman2に含まれている. このeman2のSPHIRE に当てることとします.
まずはISACのパッケージをダウンロードして展開しておきます
[root@rockylinux ~]# cd /apps/src/
[root@rockylinux src]# unzip /Public/em/gpu_isac_2.3.4.zip
[root@rockylinux src]# cd gpu_isac_2.3.4/
[root@rockylinux gpu_isac_2.3.4]# ls -lF
total 4
drwxr-xr-x. 3 root root 17 Feb 22 2021 bin/
drwxr-xr-x. 2 root root 26 Jan 16 15:50 checks/
drwxr-xr-x. 2 root root 102 Feb 22 2021 cuda/
drwxr-xr-x. 3 root root 32 Feb 22 2021 examples/
-rw-r--r--. 1 root root 1517 Jan 16 15:59 install.sh
[root@rockylinux gpu_isac_2.3.4]#
ここにある install.sh をたたけばいいのですが、SPHIRE(eman2)の稼働環境を用意してから実行します
[root@rockylinux ~]# module use /apps/modulefiles/
[root@rockylinux ~]# module load eman2/2.91
[root@rockylinux ~]# which mpirun
/apps/eman2.91/bin/mpirun
[root@rockylinux ~]# which python
/apps/eman2.91/bin/python
[root@rockylinux ~]#
一応version確認をしてみます
[root@rockylinux ~]# e2version.py
EMAN 2.91 final ( GITHUB: 2021-03-08 11:36 - commit: 81caed2 )
Your Python version is: 3.7.9
[root@rockylinux ~]# sphire --version
SPHIRE v1.4.1 (GitHub: 2021-03-08 11:36)
[root@rockylinux ~]# export PATH=/usr/local/cuda/bin:$PATH
[root@rockylinux ~]# nvcc --version
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2022 NVIDIA Corporation
Built on Tue_May__3_18:49:52_PDT_2022
Cuda compilation tools, release 11.7, V11.7.64
Build cuda_11.7.r11.7/compiler.31294372_0
[root@rockylinux ~]#
それで
[root@rockylinux ~]# cd /apps/src/gpu_isac_2.3.4/
[root@rockylinux gpu_isac_2.3.4]#
[root@rockylinux gpu_isac_2.3.4]# bash ./install.sh
Checking libraries..
SPHIRE installation: .................................................check
SPARX v5.0 (GITHUB: 2021-03-08 11:36)
[rockylinux:33855] *** Process received signal ***
[rockylinux:33855] Signal: Segmentation fault (11)
[rockylinux:33855] Signal code: Address not mapped (1)
[rockylinux:33855] Failing at address: 0x5604233896a0
[rockylinux:33855] [ 0] /lib64/libpthread.so.0(+0x12cf0)[0x7f56f0d97cf0]
[rockylinux:33855] [ 1] /lib64/libc.so.6(+0xcbe57)[0x7f56f0a8be57]
[rockylinux:33855] [ 2] /lib64/libc.so.6(+0x66095)[0x7f56f0a26095]
[rockylinux:33855] [ 3] /lib64/libc.so.6(_IO_vfprintf+0x20c)[0x7f56f0a26bdc]
[rockylinux:33855] [ 4] /lib64/libc.so.6(__vasprintf_chk+0xcc)[0x7f56f0afe4bc]
[rockylinux:33855] [ 5] /lib64/libc.so.6(__asprintf_chk+0x93)[0x7f56f0afe3d3]
[rockylinux:33855] [ 6] /apps/eman2.91/lib/python3.7/site-packages/../.././libopen-pal.so.40(opal_setenv+0x53)[0x7f56d00b1e33]
[rockylinux:33855] [ 7] /apps/eman2.91/lib/python3.7/site-packages/../../libmpi.so.40(ompi_mpi_init+0x897)[0x7f56d025dc37]
[rockylinux:33855] [ 8] /apps/eman2.91/lib/python3.7/site-packages/../../libmpi.so.40(PMPI_Init+0x71)[0x7f56d0287cb1]
[rockylinux:33855] [ 9] /apps/eman2.91/lib/python3.7/site-packages/mpi.so(+0x7a41)[0x7f56d031ba41]
[rockylinux:33855] [10] python(_PyMethodDef_RawFastCallKeywords+0x1e4)[0x560141a4b884]
[rockylinux:33855] [11] python(_PyCFunction_FastCallKeywords+0x21)[0x560141a4ba31]
[rockylinux:33855] [12] python(_PyEval_EvalFrameDefault+0x4e1d)[0x560141ab7ebd]
[rockylinux:33855] [13] python(_PyFunction_FastCallKeywords+0xfb)[0x560141a4ae7b]
[rockylinux:33855] [14] python(_PyEval_EvalFrameDefault+0x416)[0x560141ab34b6]
[rockylinux:33855] [15] python(_PyEval_EvalCodeWithName+0x2f9)[0x5601419fa829]
[rockylinux:33855] [16] python(PyEval_EvalCodeEx+0x44)[0x5601419fb714]
[rockylinux:33855] [17] python(PyEval_EvalCode+0x1c)[0x5601419fb73c]
[rockylinux:33855] [18] python(+0x22cf14)[0x560141b12f14]
[rockylinux:33855] [19] python(PyRun_FileExFlags+0xa1)[0x560141b1d331]
[rockylinux:33855] [20] python(PyRun_SimpleFileExFlags+0x1c3)[0x560141b1d523]
[rockylinux:33855] [21] python(+0x238655)[0x560141b1e655]
[rockylinux:33855] [22] python(_Py_UnixMain+0x3c)[0x560141b1e77c]
[rockylinux:33855] [23] /lib64/libc.so.6(__libc_start_main+0xe5)[0x7f56f09fad85]
[rockylinux:33855] [24] python(+0x1dcff0)[0x560141ac2ff0]
[rockylinux:33855] *** End of error message ***
./install.sh: line 5: 33855 Segmentation fault (core dumped) python ./checks/lib_check.py
Compiling CUDA code..
Configuring files for your system..
Linking GPU ISAC with the SPHIRE GUI..
GPU ISAC installation complete! Good luck with your project :)
[root@rockylinux gpu_isac_2.3.4]#
と一応インストールは完了します. っが、その前段でエラーが発生します. これは「install.sh」にある「python ./checks/lib_check.py」で発生します
こちらは別途
OMPI_ALLOW_RUN_AS_ROOT=1 OMPI_ALLOW_RUN_AS_ROOT_CONFIRM=1 mpirun --allow-run-as-root python ./checks/lib_check.py
にて実行できます
下記はその実行例となります. これで確認ができたので前段で「bash ./install.sh」のエラー該当部分にコメントを入れて実行させないでインストールを行ってもいいのかなと思います
[root@rockylinux gpu_isac_2.3.4]# OMPI_ALLOW_RUN_AS_ROOT=1 OMPI_ALLOW_RUN_AS_ROOT_CONFIRM=1 mpirun --allow-run-as-root python ./checks/lib_check.py
SPHIRE installation: .................................................check
SPARX v5.0 (GITHUB: 2021-03-08 11:36)
SPHIRE installation: .................................................check
SPARX v5.0 (GITHUB: 2021-03-08 11:36)
SPHIRE installation: .................................................check
SPARX v5.0 (GITHUB: 2021-03-08 11:36)
SPHIRE installation: .................................................check
SPARX v5.0 (GITHUB: 2021-03-08 11:36)
MPI available: .......................................................check
pydusa 1.15 py37h4a2f2b1_17 cryoem
MPI available: .......................................................check
pydusa 1.15 py37h4a2f2b1_17 cryoem
MPI available: .......................................................check
pydusa 1.15 py37h4a2f2b1_17 cryoem
MPI available: .......................................................check
pydusa 1.15 py37h4a2f2b1_17 cryoem
CUDA available: ......................................................check
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2022 NVIDIA Corporation
Built on Tue_May__3_18:49:52_PDT_2022
Cuda compilation tools, release 11.7, V11.7.64
Build cuda_11.7.r11.7/compiler.31294372_0
Looks like all the libraries we need are available, huzzah!
CUDA available: ......................................................check
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2022 NVIDIA Corporation
Built on Tue_May__3_18:49:52_PDT_2022
Cuda compilation tools, release 11.7, V11.7.64
Build cuda_11.7.r11.7/compiler.31294372_0
Looks like all the libraries we need are available, huzzah!
CUDA available: ......................................................check
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2022 NVIDIA Corporation
Built on Tue_May__3_18:49:52_PDT_2022
Cuda compilation tools, release 11.7, V11.7.64
Build cuda_11.7.r11.7/compiler.31294372_0
Looks like all the libraries we need are available, huzzah!
CUDA available: ......................................................check
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2022 NVIDIA Corporation
Built on Tue_May__3_18:49:52_PDT_2022
Cuda compilation tools, release 11.7, V11.7.64
Build cuda_11.7.r11.7/compiler.31294372_0
Looks like all the libraries we need are available, huzzah!
[root@rockylinux gpu_isac_2.3.4]#