HOME > システム > SR16000 > SR16000 利用の手引き > 付録 A Gaussian16 の使い方
付録 A Gaussian16 の使い方
A.1 Gaussian16
一般的非経験分子軌道計算プログラム Gaussian16 を SR16000 で公開しました。Gaussian16を実行するためのジョブの作成と使用方法について簡単に説明します。但し、Gaussian16自体の内容や計算方法、入力ファイルの書き方に関しては触れませんので詳細は以下に示す Gaussian 社の Web ページを参照して下さい。
本センターにおけるGaussian16のバージョンは次の通りです。(2017年4月1日現在)
Gaussian16 Revision A.03
Gaussianは1ノードによる逐次実行版(並列版ではありません)ですが、プログラムは要素並列化されており、64bitモードで動作します。また、ソースプログラムは非公開です。
(参考文献)
Gaussian Inc. ( http://gaussian.com/ )
Technical Support ( http://gaussian.com/techsupport/ )
Gaussian16 Users Reference ( http://gaussian.com/man/ )
Gaussian16 を使用して得られた計算結果や成果を公表する場合には Gaussian 社の Webページに従って文献の引用を行うようにして下さい。
A.2 スクリプトファイルの作成
Gaussian16はバッチジョブ(NQS)で実行する必要があります。バッチジョブで実行するには環境変数の設定や入出力ファイルを記述するスクリプトファイルを作成する必要があります(ログインノードでは実行できません)。以下にスクリプトファイルの例を挙げ説明します。
記入例 | 説明 |
#!/bin/csh #@$-q parallel #@$-N 1 #@$-lT 00:30:00 #@$-ls 1536MB source /usr/local/g16/bsd/g16.login cd gaussian/test g16 < test0178.com > test0178.log |
(1) シェルの宣言 (2) キューの選択 (3) ノード数 (4) 経過制限時間(ここでは30分) (5) スタックサイズ (6) 環境設定 (7) 入力ファイルの場所 (8) プログラムの起動 |
(1) スクリプトファイルをCシェル「/bin/csh」で記述することを宣言します。(本スクリプトでは
source等Cシェルのコマンドを使用しています。)
(2) 選択するキューは「parallel」あるいは「debug」となります。
(3) 並列版ではないためノード数は「1」ノード固定です。
(4) ジョブの実行時間を制限します。通常は省略可能です。(計画停止時刻(qstatコマンドで確認)が
迫っているときはこれを残り時間以内に設定しないとジョブが実行しません。)
(5) スタックサイズの標準は1GB、最大は2GBです。標準で足りない場合は2GB以内の値を指定してください。
(6) コマンドパスなど各種環境変数を設定します。
(7) 入力ファイルのある場所までディレクトリを移動します。
(8) プログラムg16を起動します。入力ファイル及び出力ファイルを以下のようにリダイレクションで指定
することができます。
g16 < 入力ファイル > 出力ファイル
「 > 出力ファイル」を省略すると実行結果はジョブの標準出力ファイルに出力します。
A.3 プログラムの実行
スクリプトファイルが完成したらファイル(以下の例では job.csh)に保存し、バッチシステムにジョブを投入します。ジョブの投入は以下のように qsubコマンドで行います。実行状況は qstat コマンドで確認して下さい。
[p11000@yayoi-1 p110000]% qsub job.csh Request 15086.yayoi submitted to queue: P001. [p11000@yayoi-1 p110000]% qstat 2011/11/27 (Sun) 20:21:50: REQUESTS on SR16000 NQS schedule stop time : 2011/12/23 (Fri) 9:00:00 (Remain: 612h 38m 10s) REQUEST NAME OWNER QUEUE PRI NODE E-TIME MEM STATE 15086.yayoi job.sh p11000 P001 63 1 1800s 170GB QUEUED
A.2 のスクリプトファイルの場合、ジョブが終了すると以下のファイルが作成されます。エラーメッセージが出ていないか各ファイルを確認して下さい。
job.csh.o15086 ← ジョブの標準出力 job.csh.e15086 ← ジョブの標準エラー出力(空の場合は作成されません) test0178.log ← Gaussian16 の出力ファイル
エラーがなければ出力ファイルに計算結果が出力され、標準出力のファイルは空になります。
ジョブをキャンセルする場合には以下のようにします。
[p11000@yayoi-1 p110000]% qdel 15086 deleting request 15086.yayoi.
A.4 実行時のエラー
Gaussian16実行後は、出力ファイル(Gaussian16の出力ファイル、ジョブの標準・エラー出力ファイル)のメッセージを確認して下さい。なお、問題解決には、入力ファイル中のルートセクションの記述を #(標準)や#T(簡略化した出力)ではなく#P(詳細の出力)としてみることも必要です。
A.5 テスト用入力ファイル
Gaussian16が用意しているテスト用の入力ファイルが以下にあります。
/usr/local/g16/tests/com/
▲ 付録 A Gaussian16 の使い方 TOPへ
A.6 注意事項
センターでは、Gaussian16で利用できるコア数を 1 としています (標準値)。必要に応じて使用するコア数 (プロセッサ数) を変更してください。ただし、Gaussian プログラム、問題サイズ等によっては、コア数を変更することで、実行時間が長くなる場合もありますのでご注意ください。
入力ファイルに %Nproc=4 と指定した場合、log ファイルに以下のメッセージが出力される (4 プロセッサが使用された) ******************************************** Gaussian 16: IBM64-G16RevA.03 25-Dec-2016 10-Mar-2017 ******************************************** %Nproc=4 Will use up to 4 processors via shared memory.
入力ファイルに %cpu=33,35,37,39 と指定した場合、log ファイルに以下のメッセージが出力される (使用するコア番号を指定して実行) ******************************************** Gaussian 16: IBM64-G16RevA.03 25-Dec-2016 10-Mar-2017 ******************************************** %cpu=33,35,37,39 SetSPE: set environment variable "XLSMPOPTS" = "procs=33,35,37,39" Will use up to 4 processors via shared memory.