Folding@homeコアのリスト

Folding@homeの分散コンピューティングプロジェクトは、FahCoresまたはCoreと呼ばれる科学的なコンピュータプログラムを使用して計算を実行する。Folding@homeのコアは、TINKER, GROMACS, AMBER, CPMD, SHARPEN, ProtoMol, Desmondなどの計算用分子シミュレーションプログラムの修正・最適化されたバージョンに基づいている。これらの種類には、それぞれ任意の識別子が与えられている。同じコアを様々なバージョンのクライアントで使用することができるが、コアをクライアントから分離することで、クライアントの更新なしに必要に応じて科学的手法を自動的に更新することができる。

1. 使用されているコア
------------

これらのコアは、現在プロジェクトで使用されている。

1.1. GROMACS
------------

Core a7
Windows、Linux、およびmacOSで利用可能で、利用可能な場合はAdvanced Vector Extensionsを使用することで、大幅な速度改善が可能である。
Core a8
Windows、Linux、およびmacOS、ARMで利用可能で、Gromacs 2020.5を使用している。

1.2. GPU
--------

グラフィックス・プロセシング・ユニットのコアは、分子動力学を行うために、新しいビデオカードのグラフィックスチップを使用する。GPU Gromacs コアは Gromacs の真の移植ではなく、Gromacs の主要な要素を取り入れ、GPU機能のために強化したものである。

1.2.1. GPU3
-----------

これらは第3世代のGPUコアで、パンデGroupが独自に開発した分子シミュレーション用のオープンライブラリであるOpenMMをベースにしている。GPU2のコードをベースにしているが、安定性と新機能が追加されている。

core 22
OpenCLおよびCUDAを使用したAMDとNVIDIA GPU用のWindowsとLinuxに対応している。OpenMM 7.4.2を使用している。

2. 使用されないコア
-----------

これらのコアは、時代遅れになりつつあるために引退しているか、一般的なリリースの準備ができていないため、現在プロジェクトでは使用されていない。

2.1. TINKER
-----------

TINKERは、分子力学と分子動力学のための完全かつ一般的なパッケージを備えた分子動力学シミュレーションのためのコンピュータ・ソフトウェア・アプリケーションであり、生体高分子のためのいくつかの特別な機能を備えている。

Tinker core 
最適化されていない単一プロセッサコアで、AMBERコアとGromacsコアが同じタスクをはるかに高速に実行するため、これは公式に引退した。このコアは Windows、Linux、Mac で利用可能であった。

2.2. GROMACS
------------

GroGPU 
Windows 上で動作する ATI series 1xxx で利用可能。ほとんどが Gromacs ベースであるが、コアの一部が書き換えられた。 このコアは、第二世代のGPUクライアントへの移行に伴い、2008年6月6日をもって引退した。
Gro-SMP 
Windows x86、Mac x86、Linux x86/64クライアントで利用可能で、これはSMPバリアントの第一世代であり、プロセス間通信にMPIを使用していた。 このコアは、スレッドベースの SMP2 クライアントへの移行により、引退した。
GroCVS 
x86 Mac および x86/64 Linux でのみ利用可能なこのコアは、MPI の使用など、同じコアベースの多くを使用しているため、Core a1 と非常によく似ている。 しかし、このコアはより最近の Gromacs コードを利用しており、特大のワークユニットなどのより多くの機能をサポートしている。 スレッドベースの SMP2 クライアントへの移行に伴い、正式に引退した。
Gro-PS3
SCEARD コアとしても知られているこのバリアントは、2012年11月に引退するまで Folding@Home クライアントをサポートしていた PlayStation 3 ゲームシステム用のものである。このコアは、GPUコアと同様に暗黙の解法計算を実行するものだが、CPUコアと同様に明示的な解法計算を実行することもでき、柔軟性に欠ける高速GPUコアと柔軟性に欠ける低速CPUコアの中間的な役割を果たしていた。 このコアは最適化にSPEコアを使用していたが、SIMDはサポートしていなかった。
Gromacs 
これはオリジナルのGromacsコアで、現在はユニプロセッサ・システムクライアントのみが利用可能で、Windows、Linux、macOSをサポートしている。
Gromacs 33 
Windows、Linux、およびmacOSの単一プロセッサクライアントでのみ利用可能なこのコアは、Gromacs 3.3のコードベースを使用しているため、より幅広いシミュレーションを実行することができる。
Gromacs SREM 
このコアは、REMDやGroSTとも呼ばれるシリアルレプリカ交換方式をシミュレーションに使用しており、WindowsとLinuxの単一プロセッサクライアントのみで利用できる。
GroSimT 
このコアは、温度を定期的に上げたり下げたりすることでサンプリングを向上させることを基本的な考え方としており、シミュレーテッドテンパリングを行う。 これにより、Folding@homeは、タンパク質の折り畳まれた状態と折り畳まれていない状態の間の遷移をより効率的にサンプリングできるようになる。 WindowsとLinuxの単一プロセッサクライアントでのみ利用可能である。
DGromacs 
単一プロセッサクライアントで利用可能なこのコアは、サポートされているSSE2プロセッサの最適化を使用しており、Windows、Linux、およびmacOSで実行できる。
DGromacsB 
Core 79 とは異なり、いくつかの科学的な機能が追加されている。 2007年8月にLinuxプラットフォームのみにリリースされたが、最終的にはすべてのプラットフォームで利用できるようになる予定である。
DGromacsC 
Core 79に非常に似ており、2008年4月にLinuxとWindows向けにWindows、Linux、macOSの単一プロセッサクライアント向けにリリースされた。
GB Gromacs 
Windows、Linux、macOS上のすべての単一プロセッサクライアントでのみ利用可能である。
GB Gromacs 
Windows、Linux、macOS で利用可能なこのコアは、2010年10月初旬にリリースされ、2010年2月現在、最新バージョンの Gromacs v4.5.3 を使用している。
SMP2 
次世代のSMPコアであるこのコアは、プロセス間通信にMPIの代わりにスレッドを使用し、Windows、Linux、macOSで利用可能である。
SMP2 bigadv 
a3に似ているが、このコアは通常よりも大きなシミュレーションを実行するために特別に設計されている。
SMP2 bigadv 
a5コアの新しいバージョン。

2.3. CPMD
---------

カー・パリネロ分子動力学法の略で、このコアは第一原理計算の量子力学的分子動力学を実行する。力場アプローチを用いる古典的な分子動力学計算とは異なり、CPMDではエネルギー、力、運動の計算に電子の運動が含まれる。 量子化学計算は、非常に信頼性の高いポテンシャルエネルギー面が得られる可能性があり、自然にマルチボディ相互作用を組み込むことができる。

QMD 
これはWindowsとLinuxの単一プロセッサクライアント用の倍精度バリアントである。 このコアは、主要な QMD 開発者である Young Min Rhee が 2006 年に卒業したため、現在は "保留" となっている。 このコアは、かなりの量のメモリを使用することができ、「オプトイン」を選択したマシンでのみ利用可能であった。 Intel CPU上でのSSE2最適化がサポートされている。 IntelライブラリとSSE2が関係するライセンス問題のため、AMD CPUにはQMD Work Unitは割り当てられていなかった。

2.4. SHARPEN
------------

SHARPEN Core
2010年初頭、Vijay Pandeは「SHARPENは今のところ保留にしている。申し訳ないが、ETAはない。それをさらに推し進めるかどうかは、その時の科学的ニーズに大きく依存している」と語った。 このコアは標準的なF@Hコアとは異なるフォーマットを使用しており、クライアントに送信される各ワークパケットには1つ以上の「ワークユニット」が含まれている。

2.5. Desmond
------------

このコアのソフトウェアは、D. E. Shaw Researchで開発された。 Desmondは、従来のコンピュータクラスタ上で生物系の高速分子動力学シミュレーションを実行する。 このコードは、新しい並列アルゴリズムと数値計算技術を用いて、多数のプロセッサを含むプラットフォーム上で高い性能を実現しているが、単一のコンピュータ上でも実行することができる。  Desmondとそのソースコードは、大学やその他の非営利の研究機関が非商業的に利用するために無償で提供されている。

Desmond Core
Windows x86とLinux x86/64で利用可能で、このコアは現在開発中である。

2.6. AMBER
----------

Assisted Model Building with Energy Refinementの略で、AMBERは分子動力学のための力場のファミリーであり、これらの力場をシミュレートするソフトウェアパッケージの名前でもある。 AMBERはもともとカリフォルニア大学サンフランシスコ校のPeter Kollmanによって開発され、現在は様々な大学の教授によって管理されている。 倍精度AMBERコアは現在SSEやSSE2で最適化されていないが、AMBERはTinkerコアよりも大幅に高速で、Gromacsコアでは実行できない機能も追加されている。

PMD 
WindowsとLinuxの単一プロセッサクライアントでのみ利用可能である。

2.7. ProtoMol
-------------

ProtoMolは、分子動力学シミュレーションのためのオブジェクト指向、コンポーネントベースのフレームワークである。ProtoMolは、高い柔軟性、容易な拡張性とメンテナンス、並列化を含む高い性能要求を提供する。 2009年には、Pandeグループはノーマルモード・ランジュバン・ダイナミクスと呼ばれる補完的な新しい手法に取り組んでいたが、これは同じ精度を維持しながらシミュレーションを大幅に高速化できる可能性を秘めていた。

ProtoMol Core 
Linux x86/64およびx86 Windowsに対応している。

2.8. GPU
--------

2.8.1. GPU2
-----------

これらは第2世代のGPUコアである。引退したGPU1コアとは異なり、ATI CAL対応の2xxx/3xxx以降のシリーズとNVIDIA CUDA対応のNVIDIA 8xxx以降のシリーズのGPU向けのバリアントである。

GPU2 
x86 Windowsクライアントでのみ利用可能。 AMD/ATIが利用していたプログラミング言語Brookのサポートを終了し、OpenCLに移行したため、2011年9月1日頃までサポートされていた。このため、F@hはATIのGPUコアコードをOpenCLで書き換えることを余儀なくされ、その結果、Core 16となった。
GPU2 
x86 Windowsクライアントでのみ利用可能。
GPU2 
x86 Windowsクライアントでのみ利用可能。
GPU2 
このコアはx86 Windowsクライアントでのみ利用可能で、2009年3月2日に正式にリリースされた。

2.8.2. GPU3
-----------

これらは第3世代のGPUコアで、パンデ・グループが独自に開発した分子シミュレーション用のオープンライブラリであるOpenMMをベースにしている。GPU2のコードに基づき、安定性と新機能が追加されている。

GPU3 
x86 Windowsのみで利用可能。
GPU3 
x86 Windowsのみで利用可能。 新しいv7クライアントと一緒にリリースされ、これはOpenCLでCore 11を書き換えたものである。
GPU3 
OpenCLを使用したAMDとNVIDIA GPU用のWindowsとLinuxで利用可能。OpenMM 5.1のため、パフォーマンスが大幅に向上している。
GPU3 
OpenCLを使用したAMDおよびNVIDIA GPU用のWindowsで利用可能。このコアは、Core17のいくつかの重要な科学的問題に対処するために開発され、OpenMM 6.0.1の最新技術を使用している。 現在、一部のAMDおよびNVIDIA Maxwell GPU上では、このコアの安定性とパフォーマンスに問題がある。このため、一部のGPUでは、このコア上で動作するワークユニットの割り当てが一時的に停止されていいる。
GPU3 
OpenCLを使用したAMDとNVIDIA GPU用のWindowsとLinuxで利用可能。OpenMM 6.2を使用しており、Core 18 AMD/NVIDIAのパフォーマンス問題を修正している。

3. 脚注
-----

4. 外部リンク
--------

[1]
[2]
[3]
[4]
[5]