GRAPEシステム利用の手引き

お知らせ

  • ジョブ管理システムのキュー構成を変更しました。(2017/03/29)

Last Updated: 2021/6/19


1. GRAPEシステムの概要

GRAPE (GRAvity PipE)は重力多体問題に特化した専用計算機です。重力多体問題でもっとも計算量が大きい粒子間の重力相互作用を高速に計算することができます。
GRAPEシステムは天文学および関連分野の大規模理論シミュレーションによる研究推進のための重力多体問題専用計算機クラスタです。
現在、天文シミュレーションプロジェクトではGRAPE-DRとGRAPE-9を運用しています。
2021年4月にGRAPE-9およびDRの運用台数を削減しました。
GPUクラスタでのGRAPEライブラリの利用に切り替えていただけますようお願いいたします。

2 システム情報

2.1 ハードウェア構成

  • muv01.cfca.nao.ac.jp : ログインノード
    • 1ノード
    • CPU : Intel Xeon E5320 1.86GHz
    • 主記憶容量 : 32GB
  • g9-[01-03,08] : 計算ノード・GRAPE-9システム
    • 4ノード
    • GRAPE-9 model800
    • CPU : Intel Core i5 4670 3.4GHz
    • 主記憶容量 : 16GB
  • gdr-[01-07,09] : 計算ノード・GRAPE-DRシステム
    • 8ノード
    • GRAPE-DR model2000
    • CPU : Intel Core i7 2600K 3.4GHz
    • 主記憶容量 : 16GB

2.2 基本性能

種類 倍精度重力相互作用演算性能 単精度重力相互作用演算性能
GRAPE-9 680GFlops 3.17TFlops
GRAPE-DR 827GFlops 1654GFlops

(注1) 倍精度・単精度重力相互作用演算性能はそれぞれGRAPE-6、GRAPE-5相当の演算を行ったときの性能となります。
(注2) GRAPE内部で行われる演算精度は各GRAPEによって異なります。最終的な演算結果が異なることがありますのでご了承願います。

2.3 ファイルシステム(解析サーバ、計算サーバと共通)

ディスク領域 ソフトリミット ハードリミット
/home/アカウント名 1TB 1.5TB

リミットに達した場合通常の方法ではファイル削除ができなくなります。
そのような場合は $cat /dev/null > hogehoge でファイル
(hogehoge)のサイズを0にすることが出来ます。
ソフトリミットを超過した場合、7日後に書き込みが出来なくなります。
ハードリミットを超えた書き込みは出来ません。
書き込みができなくなった場合はソフトリミット以下まで容量を減らして下さい。
容量の確認には"quota"コマンドをお使い下さい。
より大容量のディスク領域が必要な場合は、大容量ファイルサーバをご利用ください。
リミット超過の警告メールを転送するために /home/(ユーザーアカウント名)/ 下に .forward ファイルを作成しご自身のメールアカウントを記載して下さい。

2.4 アクセス方法

GRAPEシステムを含む共同利用計算機はHPCネットワーク内に設置されています。
これらの計算機を使用するには最初に、VPNを用いてHPCネットワークに接続する必要があります。
HPCネットワークへの接続方法の詳細はHPCネットワークへの接続方法を御覧下さい。
HPCネットワークに接続後ssh を用いて muv01.cfca.nao.ac.jp にログインします。
CfCA共同利用計算機のアカウント名(本Webシステムのアカウント名ではありません)は本Webシステムのアカウント情報から確認することができます。
また初期NISパスワードは利用申請受理後にメールで配信されます。

% ssh -l アカウント名 muv01.cfca.nao.ac.jp

2.5 パスワードやログインシェルの変更方法

ユーザーのパスワードとシェルの変更はログインノードで、

% yppasswd

% ypcsh

とすれば行えます。
(注) パスワード長は12文字以上にすべきという原則が自然科学研究機構の情報セキュリティ対策基準にて定められています(5.4節, (3) 2)。利用者各位もこちらへの準拠をお願いいたします。
HPCネットワークで使用できるシェルは、bash、csh、ksh、sh、tcsh、zsh です。ypcshでシェルを変更する場合は必ず絶対パスで指定してください。
設定が反映されるまで数分かかりますのでご注意願います。
ログインノードで行った設定は計算ノードを含むすべての共同利用計算機にも反映されます。

3 GRAPEの利用方法

GRAPE-DRおよびGRAPE-9については計算ノードへログインできないのでログインノードでプログラムの開発を行なって下さい。
開発したプログラムはジョブ管理システムを通して計算ノードで実行されます。ジョブの投入についてもログインノードで行います。
ログインノードでは計算の実行など重い処理を行なわないようご注意願います。

コンパイラ

ログインノード、ではそれぞれ以下のコンパイラが使用出来ます。

  • ログインノード : GCC 4.4.7, Intel Compiler 13.0.1, PGI Compiler 12.10

その他のソフトウェア

ログインノードでは以下のソフトウェアをご利用頂けます。

  • NEMO version 3.3.2
  • SuperMongo version 2.4.30
  • gnuplot version 4.2.6

3.2 ジョブ管理システム

GRAPEシステムではジョブ管理システムとしてTORQUEを導入しています。
GRAPE-DR、GRAPE-9を利用する場合は直接ログインせず、
ジョブ管理システムを用いてジョブを実行して下さい。
ジョブの投入はログインノードで行います。
ジョブの投入数は制限していませんが、同時実行数の制限があるため計算ノードが空いている場合でもジョブが流れないことがあります。

利用可能なキュー

キューの詳細
計算ノード キュー Wall time制限 同時実行数
GRAPE-DR gdr 無し 8
GRAPE-DRデバッグ debug 00:15:00 1
GRAPE-9 g9 無し 8

ジョブの投入方法

TORQUEを用いた計算の実行は、以下のようなシェルスクリプトをTORQUEに投入することで実現します。スクリプトの中身は各行が「#PBS」で始まる部分と、実行されるコマンド行からなる部分に大別できます。 前者では利用する計算資源の確保やジョブの挙動をTORQUEに伝える命令を記述し、後者では実際に実行されるコマンドを記述します。

以下のスクリプト(test.sh) を用意してください。

#!/bin/bash
#PBS -o log.out
#PBS -e log.err
#PBS -l nodes=1:ppn=1
#PBS -N ジョブ名
#PBS -M メールアドレス
#PBS -m abe
#PBS -q gdr
cd /cfca-work/YOUR_ACOUNT/DIR
./a.out test.dat

#PBS -l nodes=1:ppn=1

はそのまま入力してください。他の行は以下のような意味があります。

#PBS -o log.out 出力を記録するためのファイル名
#PBS -e log.err エラー出力を記録するためのファイル名
#PBS -N ジョブ名 任意の名前、qstat で表示される
#PBS -M メールアドレス 終了時に送るメールのアドレス
#PBS -m abe 終了時にメールを送るという設定
#PBS -q キューの名前 投入キュー、使用するGRAPEの種類により異なる

プログラムを実行するディレクトの設定が必要です。
以下のようにプログラムを実行するディレクトリをcd コマンドで設定してください。

cd /cfca-work/YOUR_ACOUNT/DIR

最終行でプログラムを実行します。

./a.out test.dat

スクリプトの作成終了後、qsubコマンドでジョブを投入します。

% qsub test.sh

ジョブの確認

qstat
qstat -a (詳しい情報)

以下は表示例です。

$ qstat
Job id Name User Time Use S Queue
--------------------------------------------------------------
108.muv01 TestRun01 ichkshsg 00:07:34 R gdr
117.muv01 ...un01_for_muvc ichkshsg 0 Q gdr

状態(S の列、Status の意味) は以下の意味がある。

E (Exiting) 実行済みで終了中
H (Held) 保留状態
Q (Queued) キュー待機状態
R (Running) 実行中
S (Suspended) 中断中
ジョブの消去

以下のコマンドによってジョブをキャンセルできます。

qdel

JOB-ID は上記qstat コマンドで調べることができます。

その他のオプション

実行中のジョブのみ表示する

qstat -r

どのノードで実行されているかを調べる

qstat -n1

キューの状態確認

qstat -q

より詳しいキューの情報

qstat -Q

3.3 GRAPE-9の利用方法

現在使用可能な回路はG5nb回路のみです。
ポテンシャルの計算機能は搭載されていません。

コンパイル方法

コンパイルはログインノード(muv01)上で行なって下さい。
GRAPE関連の関数名についてはGRAPE-DRと共通です。

gcc (SOURCE) -lg95 -lhib -lm -fopenmp

3.3 GRAPE-DRの利用方法

GRAPE-DRは、GRAPE-5, GRAPE-6の互換モードを備えており、わずかな修正でGRAPE-7(GRAPE-5), GRAPE-6からGRAPE-DRへ移行可能です。
無衝突系の計算はGRAPE-5モードを、衝突系の計算はGRAPE-6モードをご利用下さい。
GRAPE-DRへは直接ログイン出来ません。計算を実行する際はジョブ管理システムを通してジョブの投入を行なって下さい。
GRAPE-DRへの移行へはこちらも参考にお使いください。

コンパイル方法

以下にGRAPE-5モード、GRAPE-6モードの場合のコンパイル方法をそれぞれ示します。
また、コンパイルはログインノード(muv01)上で行なって下さい。

  • GRAPE-5モード

    % gcc (SOURCE) -lgdr5 -lhib -lm

  • GRAPE-6モード

    % gcc (SOURCE) -lgdr6 -lhib -lm

GRAPE-DRに関する参考文献

マニュアル

を御覧下さい。GRAPE-7を使うためのライブラリの説明があります。
サンプルコードも載っています。

GRAPE-5からGRAPE-7へ移行するユーザーは
MUV GRAPE-7移行メモ
を参考にお使いください。

4 その他の注意事項

GRAPEシステムは利用申請を行い、申請が受理された利用者が使用出来ます。
各利用者は利用方法を守り、他の利用者の利便を損なわないようにしてください。
利用方法が守られていないとこちらで判断した場合、警告無く利用者のプロセスを終了することをご了承下さい。