新型コロナウイルス(COVID-19)の流行が爆発的な猛威をふるっていますが、その中でこのサイトを見ていただいている人はおそらく自作PCやサーバーをお持ちかと思います。
そこで、分散型コンピューティングプロジェクトのFolding@homeを今回は紹介したいと思います。
分散型コンピューティングプロジェクトとは
それぞれ個人のPCやサーバー(逸般の誤家庭に限りますが)などを持っている人たちで、世界中の人々が、それらのマシンのリソースを利用してつなぎ合わせ、スパコン並みの演算能力を実現するものです。
一個人では大きくないですが、分散型で並列に演算するとかなり大きな力になります。それを利用して様々な難病の解析を行うプロジェクトがあります。
様々なプロジェクトがあり、今回はいま猛威をふるうコロナウイルスの解析を行っているプロジェクト、Folding@homeを紹介したいと思います。
Folding@homeについて
今回のFolding@homeは主に余っているCPUやGPUのリソースで、分割された解析データをダウンロード、解析完了後に結果をアップロードしていくものです。
コロナウイルスのみならず、様々な疾患などの解析が行われていますが現在は優先的にコロナウイルスの解析が多いみたいです。
公式Twitterによると主にコロナウイルス関連で解析しているのは以下のものです
- 11741:SARS-CoV-2受容体結合ドメインとヒト受容体ACE2の複合体
- 11746:上記11741の代替構造
- 11742:SARS-CoV-2プロテアーゼと阻害剤の複合体
- 11743:SARS-CoV-2プロテアーゼに対する潜在的な創薬標的
- 11744:SARS-CoV S230抗体によって捕獲されたSARS-CoV受容体結合ドメイン
- 11745:SARS-CoV S230抗体によって捕獲されたSARS-CoV-2に変異したSARS-CoV受容体ドメイン
運用方法
本題の運用方法に入ります。
公式サイトにアクセスします。
次に上部メニューバーのStart foldingをクリックし、ダウンロードページに行きます。
Windowsの場合
Windowsの欄から、exeファイルをダウンロードし、起動後は指示に従いインストールします。
Macの場合
このリンクのページAlternative downloadsから、macOSのインストーラーをクリック。同様にインストールします。
LINUXの場合
今回は管理人の環境であるcentosでの解説をします。
ターミナルへ接続し、それぞれ必要なインストーラーをダウンロードします。
以下の操作をします。
wget https://download.foldingathome.org/releases/public/release/fahclient/centos-5.3-64bit/v7.4/fahclient-7.4.4-1.x86_64.rpm
wget https://download.foldingathome.org/releases/public/release/fahcontrol/centos-5.3-64bit/v7.4/fahcontrol-7.4.4-1.noarch.rpm
wget https://download.foldingathome.org/releases/public/release/fahviewer/centos-5.3-64bit/v7.4/fahviewer-7.4.4-1.x86_64.rpm
次に、メインのクライアントのパッケージをインストールします。
sudo rpm -i --nodeps fahclient-7.4.4-1.x86_64.rpm
GUIで操作する場合はコントローラーもインストールします。
sudo rpm -i --nodeps fahcontrol-7.4.4-1.noarch.rpm
さらに、GUI環境の場合はビューワーもインストールします。
sudo rpm -i –nodeps fahviewer-7.4.4-1.x86_64.rpm
今回はGUIは使いません。以上でインストールは終了です。
起動方法
設定ファイルから、基本設定を行います。
vi /etc/fahclient/config.xml
<config>
<!-- See sample config: /usr/share/doc/fahclient/sample-config.xml -->
<!-- Client Control
Don't fold anonymously, provide user info. -->
<fold-anon v='false'/>
<!-- Folding Slot Configuration -->
<gpu v='true'/> #GPUの仕様の可否
<!-- If true, attempt to autoconfigure GPUs -->
<!-- Slot Control
Options: light, medium or full
Watch out for high load -->
<power v='full'/> #演算リソースの負荷度合い
<!-- User Information
Send all those points to team NairobiLUG 229502
http://fah-web2.stanford.edu/cgi-bin/main.py?qtype=teampage&teamnum=229502 -->
<user v='ユーザー名(チーム名)'/>
<passkey v='パスフレーズ'/>
<team v='チームに参加する場合はその番号'/>
<!-- Folding Slots -->
<!-- Use all the CPUs
Watch out for high load -->
<slot id='0' type='CPU'/>
<slot id='1' type='GPU'/> #GPUを使用する場合
<!-- Grant Remote Web Access
access web UI at 192.168.1.63:7396 -->
<allow>127.0.0.1 192.168.1.63</allow>
<web-allow>127.0.0.1 192.168.1.63</web-allow>
#リモートでWEBから操作する場合はここに自分のサーバーのIPアドレスと置き換える
</config>
設定が終わったら、次は起動します。
vi /var/lib/fahclient/
sudo /etc/init.d/FAHClient start
#起動後OKと表示されれば解析開始です。
sudo /etc/init.d/FAHClient stop
sudo /etc/init.d/FAHClient restart
#以上の操作も可能です。
ログの確認はfahclientディレクトリ配下にあるlog.txtで確認可能です。
以上です。皆さんの余っているリソース、かなり使い切れるので、ハイエンドの本領を味わいたい方、是非力を合わせましょう!
コメント