LAMMPS、再スケールの加速パッケージ

概要

LAMMPS は、以下に焦点を当てたオープンソース ソフトウェアです。 モデリング 古典的な分子動力学 (MD) を使用した原子系の解析。 Large-Scale Atomic/Molecular Massively Parallel Simulator の略称です。 

LAMMPS を使用すると、固体材料 (金属および半導体)、軟材料 (ポリマーおよび生体分子)、および粗粒またはメゾスコピック システムをモデル化できます。 そのモデルの多くには、CPU のパフォーマンスを高速化するバージョンがあり、 GPU、インテル Xeon Phis。 コードは、新しい機能を追加して簡単に変更または拡張できるように設計されています。

Rescale プラットフォームでは、GPU パッケージと User-OpenMP という XNUMX つの高速化された LAMMPS パッケージが利用可能です。

次の例は、それらを実装する方法を示しています。

レナード・ジョーンズ液体

次の例は、 LAMMPSによるレナード・ジョーンズポテンシャルを使用した単純な流体システムの計算:

  • 2,048,000 タイムステップで 100 個の原子
  • 換算密度 = 0.8442 (液体)
  • フォースカットオフ = 2.5 シグマ
  • 隣接スキン = 0.3 シグマ
  • NVE時間積分

LAMMPS GPU パッケージ

  • 多数の CPU に接続された XNUMX つ以上の GPU 向けに設計
  • ペアは GPU で実行され、修正/ボンド/計算は CPU で実行されます
  • アトムベースのデータ (座標、力など) は、タイムステップごとに CPU と GPU の間を行き来します (デフォルト)
  • 非同期の力の計算は、CPU と GPU で同時に実行できます (動的負荷分散)。

このパッケージを使用するには、ユーザーは入力ファイルにパッケージ コマンドを追加するか、コマンド ラインから GPU パッケージを実行する必要があります。

ジョブの構成

Rescaleの起動

Rescale プラットフォームを起動するには:

  • に行きます platform.rescale.com, アカウント情報を使用してログインします。 
  • プラットフォームのメイン画面で、 +新しいジョブの作成 画面の左上隅にあるボタン。 ジョブ名の横にある鉛筆アイコンをクリックして、ジョブの名前を自由に変更できます。 (「題名のない仕事」) ページの上部にあります。 Rescale のプラットフォームはすべてのジョブを保存するため、後で再度見つけられるように、何か具体的な名前を付けることをお勧めします。

これはジョブを送信する最初のステップです。

入力ファイル

これで、入力ファイルをローカル コンピューターからアップロードできます。または、既にクラウド上にある場合は、 .

  • このチュートリアルでは、スクリプトである XNUMX つのファイルをアップロードする必要があります。
  • 「コンピュータからアップロード」をクリックし、ファイル LJ.in を選択します。 あなたのコンピュータから。
    • サンプル ジョブのクローンを作成した場合は、[クラウド ストレージのファイルを使用] をクリックし、ローカル コンピューターからアップロードしたファイルを選択します。
  • ユーザーは、GPU パッケージがシミュレーション設定と互換性があるかどうかを確認し、スクリプトの先頭に次の行を追加する必要があります。
package gpu 2  (#of GPU per nodes)

詳細はこちら こちら.

ソフトウェアの設定

これで、「ソフトウェア設定」ページでソフトウェア パッケージ オプションを設定できるようになりました。 タイルを検索するか、直接選択できます。 ランプ:

  • 次、 分析オプション 設定する必要があります.
  • ドロップダウン セレクターを使用すると、ソフトウェアの優先バージョンを選択できます。
  • このチュートリアルの入力ファイルは次のようにテストされています。 LAMMPS (29 年 2019 月 XNUMX 日 (GPU)), そのオプションを選択します。
  • これはオープンソース ソフトウェアであるため、ライセンスの種類を選択する必要はありません。
  • 次に、プロジェクトの分析実行コマンドを追加する必要があります。 このコマンドは、使用されている各ソフトウェア パッケージおよび各入力ファイルに固有です。 この入力ファイルには、以下を追加する必要があります。
mpirun -np 16 lmp_rescale -sf gpu -pk gpu 2 -in LJ.in

これで、実行するコアのタイプと数を選択できるようになりました。 ハードウェアの設定 ページで見やすくするために変数を解析したりすることができます。

基本的なジョブの場合、編集するハードウェアの設定は、 Coretype、コア数、および経過時間.
この例では、GPU の数 (8) に 1、ウォールタイム (6) に 2 時間、および時間 (XNUMX) に Obsidian を選択します。 基本 タイプ。 Rescale は、オンデマンド エコノミーおよびオンデマンド プライオリティのコア タイプ オプションを提供します。 これらのオプションの詳細については、こちらをご覧ください。 こちら.

何も指定する必要はありません ポスト処理 このチュートリアルのオプション。 継続するために レビュー、 クリック Next ポスト処理 screen.

選択内容を確認した後、この時点でケースをバッチ送信できるようになります。

レビュー

レビューステップでは、送信する前にジョブの概要が表示されます。

  • 青をクリック 送信 ジョブ設定ページの右上隅、またはジョブ設定ページの中央にあるボタン レビュー ページで見やすくするために変数を解析したりすることができます。
  • あるいは、ジョブを送信する代わりに、次のことを選択することもできます。 Save 問題のセットアップは後で実行されます。

Status:

これで、「ステータス」タブからジョブの進行状況を監視できるようになりました。

  • ジョブのステータスを監視し、ジョブに関する情報を取得できます。 リアルタイムで。 ここでは、出力「process_out.log」のライブテーリングを確認できます。
  • この分析は完全にクラウドで実行されるため、ブラウザ ウィンドウを閉じるか、コンピュータをシャットダウンしても構いません。 Rescale にログインし、 Jobs > Create New Job タブ。 ジョブが完了すると、通知するメールが届きます。
  • のガイド 監視ステータス Rescaleで見つけることができます こちら
  • ジョブの実行が完了したら、次のことができます。 ダウンロード からのすべての出力ファイル 結果 ページ。 デスクトップを起動し、このジョブをアタッチして後処理を実行することもできます。 
  • のガイド ジョブ結果の管理 Rescale で見つかりました こちら.

LAMMPS ユーザー OpenMP パッケージ

  • OpenMP を使用して CPU でのマルチスレッドを有効にします
  • 広範な LAMMPS のカバレッジ (108 ペアのスタイル、30 の修正、分子トポロジー結合、角度など、PPPM、Verlet および rRESPA)
  • 少数のスレッド (2 ~ 4) に最適
  • マルチコア ノード間で MPI を使用して実行する場合、MPI は通信ボトルネックに悩まされることが多く、MPI+OpenMP を使用すると、 もっと速くできる
  • ジョブあたりのノード数が多くなり、ノードあたりのコア数が増えるほど、MPI+OpenMP によるメリットが大きくなります。

あなたはより多くの情報を見つけることができます こちら.

このパッケージを使用してこのチュートリアルを実行するには、次の手順に従います。

  1. ユーザーは、OMP パッケージがシミュレーション設定と互換性があるかどうかを確認し、スクリプトの先頭に次の行を追加する必要があります。
package omp 2 (# of OpenMP threads to associate with each MPI process)
  1. 詳細はこちら こちら
  2. ソフトウェアの設定:
  • 次、 分析オプション 設定する必要があります.
    • ドロップダウン セレクターを使用すると、ソフトウェアの優先バージョンを選択できます。
    • このチュートリアルの入力ファイルは次のようにテストされています。 ランプス (29年2021月XNUMX日), そのオプションを選択します。
    •  これはオープンソース ソフトウェアであるため、ライセンスの種類を選択する必要はありません。
    • 次に、プロジェクトの分析実行コマンドを追加する必要があります。 このコマンドは、使用されている各ソフトウェア パッケージおよび各入力ファイルに固有です。 この入力ファイルには、以下を追加する必要があります。
mpirun -np 16 lmp -sf omp -pk omp 2 -in LJ.in
  1. ハードウェア設定の場合: コア数として 16 を選択し、ウォールタイムとして 6 時間を選択します。 このチュートリアルのコア タイプとして SterliteMax が選択されています。

  1. Rescale は、オンデマンド エコノミーおよびオンデマンド プライオリティのコア タイプ オプションを提供します。 これらのオプションの詳細については、こちらをご覧ください。 こちら.
  2. 何も指定する必要はありません ポスト処理 このチュートリアルのオプション。 継続するために レビュー、 クリック Next ポスト処理 screen. 選択内容を確認した後、この時点でケースをバッチ送信できるようになります。
  3. 前述のように、シミュレーションのステータスと結果を監視します。
  4. のガイド ジョブ結果の管理 Rescale で見つかりました こちら