本家様 https://emcore.ucsf.edu/ucsf-motioncor2

ライセンスにご注意ください
本家様から

NOTE: This software may only be downloaded and used for free by academic and/or non-profit users.
      All others are required to contact David Agard for licensing information prior to download.

使用するには nvidia cardが必要です。

MotionCor2-1.3.0

前回同様 8.0、9.2、10.1とかのcudaライブラリが必要
計算機の搭載メモリーは128GBが推奨で、対象に寄るが64GBでも動くみたい

MotionCor2-1.2.6

利用できるcudaのバージョンが、8.0、9.2、10.1と広がった。

MotionCor2-1.1.0

cuda-8.0以上が動作要件となった。
加えて「libtiff.so.5」が必須で、既定で「libtiff.so.3」なCentOS6では動かなくなる...
別途コンパイルすればCentOS6でも動くけどね
CentOS7は既定で「libtiff.so.5」である。

ファイルをダウンロードして展開。
使い方は同封のPDF参照
GPUデバイスを共有してMotionCor2を実行すると扱けるみたい。
この辺はtorque/pbsproとかでgpuIDを意識したqsubスクリプトが必要なのかも。
relionからMotionCor2を利用するなら問題ないけど。

リリースノートに
「This version further improves the speed of motion correction and more robust compared to previous releases.」
(google先生訳:このバージョンでは、モーション補正の速度がさらに向上し、以前のリリースよりも堅牢になりました。)
とある
438MBのtiffファイルで計算したら

MotionCor2-1.1.0MotionCor2-1.0.4
Total time:48.144424 sec89.335754 sec

と確かに速度はあがったみたい

memo(180819)
Ryzen 7 2700X上で1080Ti2枚(--gpu 0 1)で計算したら

Warning: Dark reference size does not match frame size.
...... Frame size: 3710 3838
...... Dark size:  0 0
Detect bad and hot pixels.

にて止まってしまった。。1枚なら最後まで計算してくれる。
intelなcpuで1080Ti 2枚は問題なし。

MotionCor2-1.0.4

下記のSegmentation faultが解消されたみたい.
「-DefectFile」を指定しても計算は正常終了しました.

計算中、GPUのメモリ消費量が従来1.0.0なら200Mとか600MBとかだったのが、6GBとかに増加.
計算資源を有効に活用したのか、格段に計算時間が短くなりました.

Segmentation fault

MotionCor2_1.0.2において「cuda 8.0.44-1, Driver Version: 367.48」であるとSegmentation faultが発生した
以前のMotionCor2-1.0.0では問題なく終了していたのに...

lddでMotionCor2_1.0.2を見ると参照すると

[root@f ~]# ldd ./MotionCor2_1.0.2
        linux-vdso.so.1 =>  (0x00007fff045f9000)
        libcufft.so.8.0 => /usr/local/cuda-8.0/targets/x86_64-linux/lib/libcufft.so.8.0 (0x00007fcae8666000)
        libcudart.so.8.0 => /usr/local/cuda-8.0/targets/x86_64-linux/lib/libcudart.so.8.0 (0x00007fcae83ff000)
        libcuda.so.1 => /usr/lib64/nvidia/libcuda.so.1 (0x00007fcae7a1b000)
        libtiff.so.3 => /lib64/libtiff.so.3 (0x00007fcae77b6000)
        libpthread.so.0 => /lib64/libpthread.so.0 (0x00007fcae7599000)
        libstdc++.so.6 => /lib64/libstdc++.so.6 (0x00007fcae7291000)
        libm.so.6 => /lib64/libm.so.6 (0x00007fcae6f8f000)
        libc.so.6 => /lib64/libc.so.6 (0x00007fcae6bcb000)
        libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007fcae69b5000)
        librt.so.1 => /lib64/librt.so.1 (0x00007fcae67ad000)
        libdl.so.2 => /lib64/libdl.so.2 (0x00007fcae65a8000)
        libnvidia-fatbinaryloader.so.367.48 => /usr/lib64/nvidia/libnvidia-fatbinaryloader.so.367.48 (0x00007fcae635a000)
        libjpeg.so.62 => /lib64/libjpeg.so.62 (0x00007fcae6105000)
        libz.so.1 => /lib64/libz.so.1 (0x00007fcae5eee000)
        /lib64/ld-linux-x86-64.so.2 (0x000055a350ee3000)
[root@f ~]#

でcuda8は必須みたい. っでcuda8のGA2版「8.0.61-1, Driver Version: 384.81」で試してみたが変わらず...
っで、「-DefectFile」の指定を外したら最後まで計算したのだが....環境はCentOS 7.4
/var/log/messagesに
kernel: MotionCor2_1.0.[2872]: segfault at 7f78c22f3040 ip 00007f78dc7a781d sp 00007f78c6873cc8 error 6 in libc-2.17.so[7f78dc71e000+1b8000]
と記載された.

ubuntu 16.04(cuda8/GA2)で試してみたが、同様にエラーが発生...


トップ   編集 添付 複製 名前変更     ヘルプ   最終更新のRSS
Last-modified: 2019-10-31 (木) 23:29:11 (1309d)