Gaussian

最終更新日:2022年7月14日

Gaussian は Carnegie-Mellon 大学の Pople を中心として開発された分子軌道計算プログラムパッケージです。 プログラム構造の明解さ、計算の安定性から急速に普及し, 広く計算化学の分野で利用されている世界的に著名なアプリケーションソフトウェアです。


利用環境

  • サブシステムA
  • バージョン 九州大学構成員 学術研究機関構成員 民間利用の方
    16 C.01
    16 A.03
  • サブシステムB
  • バージョン 九州大学構成員 学術研究機関構成員 民間利用の方
    16 C.01
    16 A.03

サイトライセンス(九州大学限定)


利用方法

環境設定

以下はスクラッチファイルの出力先としてホームディレクトリ直下の scratch ディレクトリ(~/scratch)を指定しています。 スクラッチファイルの出力先に指定されるディレクトリをご用意の場合は適宜読み替えてください。 不要になったスクラッチファイルは削除してください。

$ module load g16/c01
$ export GAUSS_SCRDIR=$HOME/scratch

Gaussianプログラムの拡張子名

Gaussian のプログラムファイル名は必ず拡張子を".com"としてください
Gaussian では .comファイルが入力ファイル、.logファイルが出力ファイルです。


処理形態

Gaussian はプログラムの規模によっては、大量のメモリとディスクを消費します。 そのため、利用はバッチ処理のみとします。
Rev C.01はサブシステムBのGPU(Pascal)に対応しておりGPUでの利用が可能です。 利用の際は以下のようにGPU数を指定ください。
※CPUのみ利用の場合は -g オプションは不要です。

$ g16 -c=<CPU数> -g=<GPU数>=<制御CPU>

1ノード36コアの(CPU+GPU)ジョブの場合

4GPU利用の場合
$ g16 -c=0-35 -g=0-3=0-1,18-19
3GPU利用の場合
$ g16 -c=0-35 -g=0-2=0-1,18
2GPU利用の場合
$ g16 -c=0-35 -g=0-1=0-1
1GPU利用の場合
$ g16 -c=0-35 -g=0=0

ノード内複数ジョブを利用する場合

CPUのみ利用の場合
#!/bin/bash
#PJM -L "rscunit=ito-b"
#PJM -L "rscgrp=ito-g-1"
#PJM -L "vnode=1"
#PJM -L "vnode-core=9"
#PJM -L "elapse=01:00:00"
#PJM --no-stging
#PJM -j

module load g16/c01

CPULIST=`numactl --show |grep physcpubind |sed "s/ /,/g" |cut -d"," -f2- |sed "s/,$//"`
OPT="-c=$CPULIST"

g16 $OPT < test0001.com >& test0001.log
CPU+GPU利用の場合
#!/bin/bash
#PJM -L "rscunit=ito-b"
#PJM -L "rscgrp=ito-g-1"
#PJM -L "vnode=1"
#PJM -L "vnode-core=9"
#PJM -L "elapse=01:00:00"
#PJM --no-stging
#PJM -j

module load g16/c01

CPULIST=`numactl --show |grep physcpubind |sed "s/ /,/g" |cut -d"," -f2- |sed "s/,$//"`
CTRCPU=`echo $CPULIST |awk -F"," '{print $1}'`
OPT="-c=$CPULIST -g=0=$CTRCPU"

g16 $OPT < test0001.com >& test0001.log


バッチ処理(逐次・スレッド並列)

#!/bin/bash
#PJM -L "rscunit=ito-b"
#PJM -L "rscgrp=ito-g-1-dbg"
#PJM -L "vnode=1"
#PJM -L "vnode-core=9"
#PJM -L "elapse=1:00:00"
#PJM -j

module load g16/a03
export GAUSS_SCRDIR=$HOME/scratch
g16 test001
使用シェルがbashであることを指定
サブシステムBでの実行を指定
リソースグループをito-g-1-dbgに設定
仮想ノード数(Gaussianの場合は物理ノード数)を指定
仮想ノードの持つCPUコア数を指定
最大経過時間を1時間に設定


Gaussian環境設定
g16コマンドによりジョブを実行

バッチ処理用スクリプトの記述例(ノード間並列)

#!/bin/bash
#PJM -L "rscunit=ito-b"
#PJM -L "rscgrp=ito-g-16-dbg"
#PJM -L "vnode=4"
#PJM -L "vnode-core=36"
#PJM -L "elapse=1:00:00"
#PJM -j
#PJM -S

module load g16/a03
export GAUSS_SCRDIR=$HOME/scratch
g16 -w="`cat ${PJM_O_NODEINF} | tr "\n" "," \
 | sed s/,$//`" -c=0-35 test0397.com
使用シェルがbashであることを指定
サブシステムBでの実行を指定
リソースグループをito-g-16-dbgに設定
仮想ノード数(Gaussianの場合は物理ノード数)を4に指定
仮想ノードの持つCPUコア数を指定(36が推奨)
最大経過時間を1時間に設定


Gaussian環境設定
g16コマンドによりジョブを実行

注意事項

ITOで作成したチェックポイントファイルをGaussView(Win版)で読み込めない場合

ITO上で作成したチェックポイントファイル(バイナリ)を Windows版のGaussViewで読み込めない可能性があります。
その場合は以下の手順でファイルを変換してお試しください。

1. ITO上のチェックポイントファイル(*.chk)をformchkコマンドで
 フォーマット化チェックポイントファイル(*.fck)に変換する。
2. 生成したfckファイルを自分のPCに転送する。
3. 自分のPCのGaussian 16WのUnFchkコマンドでバイナリ化する。(chkファイル生成)
4. 出来たchkファイルをGaussView 6.0を使って読み込む。



参考資料

マニュアル

Gaussian Inc. のホームページ http://www.gaussian.com/ から Gaussian の詳細な情報(オンラインマニュアル、製品紹介、解析事例など)を得ることができます。


サンプルプログラム

ログインノードの /usr/local/g16a03/tests/com/ディレクトリにサンプルプログラムがあります。