パフォーマンスの改善¶
更新グループが実装されました¶
ドメイン分割は、現在、「更新グループ」と呼ばれるグループに基づいて実行できます。これは、更新時に依存関係を持つ原子のグループであり、これらは制約や仮想サイトとして機能します。更新グループは、通常、水素を含む結合のみを制約する場合に使用でき、可能な場合は自動的に有効になります。これにより、制約や仮想サイトに対するMPIおよびOpenMP通信が不要になり、パフォーマンスが向上します。
GPUでのPME(ポテンシャルエネルギー計算)が、電荷を伴わない自由エネルギー摂動を実行する場合¶
PMEは、電荷を変化させない自由エネルギーの摂動を実行する際に、GPU上で実行できるようになりました。
PMEによる長距離相互作用のGPUオフロードがOpenCLで利用可能になりました。¶
AMD、Intel、NVIDIA のすべてのサポートされているデバイスで、OpenCL を使用して PME タスクを GPU にオフロードできるようになりました。これは、以前の CUDA オフロードと同じ方法で動作します。単一の GPU を使用して、長距離の PME 相互作用の計算を高速化できます。この機能により、GPU のバランスを取るために多くの CPU コアが必要だった 2018 年版と比較して、GPU ごとに 2〜4 つの CPU コアがほぼ同じ速度で動作します。GPU と CPU のバランスが取れたハードウェアでも、わずかな改善が見られ、強力な GPU を搭載したハードウェアで効果的なシミュレーションを実行できる能力が大幅に向上しました。
Intel製の統合GPUは、OpenCLを使用したGPUへのオフロードをサポート¶
Intel CPU に統合された GPU を搭載した場合、以前と同様に、非結合タスクを GPU にオフロードできるようになりました。これにより、特に最新のデスクトップおよびモバイル Intel CPU では、シミュレーションのパフォーマンスが最大 20% 向上する可能性があります。
CUDA GPUへのオフロードにおいて、結合相互作用がサポートされるようになりました。¶
現在、CUDA を使用して NVIDIA GPU 上で実行できる、一般的な結合および LJ-14 相互作用のタイプは、ドメイン分解を使用するかどうかに関係なく、サポートされています。 パラメータが変更された相互作用はサポートされていません。
NVIDIA Turing GPU 用のコード生成サポートを追加¶
CUDA 10.0 を使用すると、NVIDIA Turing GPU を直接 nvcc コンパイラでターゲットできます。CUDA 10 (またはそれ以降) を使用する場合、デフォルトで Turing アーキテクチャに適したフラグを生成します。