====== Gaussian16 ====== Gaussian16を使用可能な計算機サーバは以下の通りです。 * [[application:gaussian16#大規模並列計算サーバ|大規模並列計算サーバ]] * [[application:gaussian16#アクセラレータサーバ|アクセラレータサーバ]] * [[application:gaussian16#並列計算・インフォマティクスサーバ|並列計算・インフォマティクスサーバ]] * [[application:gaussian16#仮想サーバ|仮想サーバ]] \\ Gaussian16では中間ファイルの容量が大きくなる場合があるため、容量制限のある/home以下ではなく、/work以下にご自身のアカウント名で作成したディレクトリでの実行を推奨します。\\ \\ ==== 入力ファイル例 ==== ヘキサカルボニルクロニウムの構造最適化を行う入力ファイルが以下にありますので、ご覧ください。\\ この入力ファイルではHartree-Fock法を用い、3-21G基底で構造最適化計算を行います。\\ (例) $ ls -l /work/app/Gaussian/example.com -rw-r--r-- 1 root root 420 Jul 12 16:33 /work/app/Gaussian/example.com \\ ===== 大規模並列計算サーバ ===== 大規模並列計算サーバのフロントエンドノード(super.sc.imr.tohoku.ac.jp)からジョブを投入してください。\\ \\ 以下のバージョンが利用可能です。 ^バージョン ^環境設定コマンド ^ ^B.01 |source /work/app/Gaussian/g16.profile | ^C.01 |source /work/app/Gaussian/C.01/g16.profile | \\ === 並列数の指定 === 並列処理を行うためには、入力ファイルに'CPU=0-N'を指定してください。Nは並列数で、35以下の値にします。\\ NProc=Nでは正常に並列処理が行われません。\\ 以下は36コアを使用する例です。\\ \\ == 入力ファイルでの指定例 == %CPU=0-35 \\ === 一時ファイル出力先の指定 === /work/scratch以下にご自身のアカウント名でディレクトリを作成してください。\\ 入力ファイルには下記のように記述し、一時ファイルの出力先を指定します。\\ \\ (例) %Chk=example_app.chk \\ === ジョブ投入スクリプト === ジョブ投入用のスクリプトを作成します。\\ -d 並列数の値は入力ファイルのCPUの値と合わせてください。\\ #!/bin/sh #PBS -l select=1 #PBS -q キュー名 #PBS -N ジョブ名 source /work/app/Gaussian/g16.profile DIRNAME=`basename $PBS_O_WORKDIR` WORKDIR=/work/$USER/$PBS_JOBID mkdir -p $WORKDIR cp -raf $PBS_O_WORKDIR $WORKDIR cd $WORKDIR/$DIRNAME aprun -j 1 -d 並列数 g16 入力ファイル2> エラー出力ファイル cd; if cp -raf $WORKDIR/$DIRNAME $PBS_O_WORKDIR/.. ; then rm -rf $WORKDIR; fi \\ (例) #!/bin/sh #PBS -l select=1 #PBS -q P_016 #PBS -N g16 source /work/app/Gaussian/g16.profile DIRNAME=`basename $PBS_O_WORKDIR` WORKDIR=/work/$USER/$PBS_JOBID mkdir -p $WORKDIR cp -raf $PBS_O_WORKDIR $WORKDIR cd $WORKDIR/$DIRNAME aprun -j 1 -d 36 g16 test0000.com 2> g16.err cd; if cp -raf $WORKDIR/$DIRNAME $PBS_O_WORKDIR/.. ; then rm -rf $WORKDIR; fi \\ ===== アクセラレータサーバ ===== アクセラレータサーバのフロントエンドノード(gpu.sc.imr.tohoku.ac.jp)からジョブを投入してください。\\ \\ 以下のバージョンが利用可能です。 ^バージョン ^環境設定コマンド ^実行キュー ^ ^C.01 |source /usr/local/app/Gaussian/C.01/g16.profile |A_004 | \\ === 並列数の指定 === GPUを利用するためには、コア数、GPU数を指定する必要があります。\\ 以下は36コア、10GPUを使用する例です。\\ \\ == 入力ファイルでの指定例 == %CPU=0-35 %GPUCPU=0-9=0-4,18-22 \\ == 環境変数での指定例 == export GAUSS_CDEF="0-35" export GAUSS_GDEF="0-9=0-4,18-22" \\ 全ての計算に対して有効なわけではございませんので、途中結果の確認や経過時間上限の設定などをご検討ください。\\ 以下のページもご覧ください。\\ [[http://gaussian.com/gpu/]]\\ \\ === 一時ファイル出力先の指定 === /work/scratch以下にご自身のアカウント名でディレクトリを作成してください。\\ 入力ファイルには下記のように記述し、一時ファイルの出力先を指定します。\\ \\ (例) %Chk=example_app.chk \\ === ジョブ投入スクリプト === ジョブ投入用のスクリプトを作成します。\\ -d 並列数の値は入力ファイルのCPUの値と合わせてください。\\ #!/bin/sh #PBS -l select=1 #PBS -q キュー名 #PBS -N ジョブ名 source /usr/local/app/Gaussian/C.01/g16.profile DIRNAME=`basename $PBS_O_WORKDIR` WORKDIR=/work/$USER/$PBS_JOBID mkdir -p $WORKDIR cp -raf $PBS_O_WORKDIR $WORKDIR cd $WORKDIR/$DIRNAME g16 入力ファイル 2> エラー出力ファイル cd; if cp -raf $WORKDIR/$DIRNAME $PBS_O_WORKDIR/.. ; then rm -rf $WORKDIR; fi \\ (例)アクセラレータサーバへの投入 #!/bin/sh #PBS -l select=1 #PBS -q A_004 #PBS -N g16 source /usr/local/app/Gaussian/C.01/g16.profile DIRNAME=`basename $PBS_O_WORKDIR` WORKDIR=/work/$USER/$PBS_JOBID mkdir -p $WORKDIR cp -raf $PBS_O_WORKDIR $WORKDIR cd $WORKDIR/$DIRNAME g16 test0000.com 2> g16.err cd; if cp -raf $WORKDIR/$DIRNAME $PBS_O_WORKDIR/.. ; then rm -rf $WORKDIR; fi \\ ===== 並列計算・インフォマティクスサーバ ===== アクセラレータサーバのフロントエンドノード(gpu.sc.imr.tohoku.ac.jp)からジョブを投入してください。\\ \\ \\ 以下のバージョンが利用可能です。 ^バージョン ^環境設定コマンド ^実行キュー ^ ^B.01 |source /usr/local/app/Gaussian/g16.profile |C_002 | ^::: |::: |C_004 | ^C.01 |source /usr/local/app/Gaussian/C.01/g16.profile |C_002 | ^::: |::: |C_004 | \\ === 並列数の指定 === 並列処理を行うためには、入力ファイルに'CPU=0-N'を指定してください。Nは並列数で、35以下の値にします。\\ NProc=Nでは正常に並列処理が行われません。\\ 以下は36コアを使用する例です。\\ \\ == 入力ファイルでの指定例 == %CPU=0-35 \\ === 一時ファイル出力先の指定 === /work/scratch以下にご自身のアカウント名でディレクトリを作成してください。\\ 入力ファイルには下記のように記述し、一時ファイルの出力先を指定します。\\ \\ (例) %Chk=example_app.chk \\ === ジョブ投入スクリプト === ジョブ投入用のスクリプトを作成します。\\ -d 並列数の値は入力ファイルのCPUの値と合わせてください。\\ #!/bin/sh #PBS -l select=1 #PBS -q キュー名 #PBS -N ジョブ名 source /usr/local/app/Gaussian/g16.profile DIRNAME=`basename $PBS_O_WORKDIR` WORKDIR=/work/$USER/$PBS_JOBID mkdir -p $WORKDIR cp -raf $PBS_O_WORKDIR $WORKDIR cd $WORKDIR/$DIRNAME g16 入力ファイル 2> エラー出力ファイル cd; if cp -raf $WORKDIR/$DIRNAME $PBS_O_WORKDIR/.. ; then rm -rf $WORKDIR; fi \\ (例) #!/bin/sh #PBS -l select=1 #PBS -q C_002 #PBS -N g16 source /usr/local/app/Gaussian/g16.profile DIRNAME=`basename $PBS_O_WORKDIR` WORKDIR=/work/$USER/$PBS_JOBID mkdir -p $WORKDIR cp -raf $PBS_O_WORKDIR $WORKDIR cd $WORKDIR/$DIRNAME g16 test0000.com 2> g16.err cd; if cp -raf $WORKDIR/$DIRNAME $PBS_O_WORKDIR/.. ; then rm -rf $WORKDIR; fi \\ ===== 仮想サーバ ===== 以下のバージョンが利用可能です。 ^バージョン ^環境設定コマンド ^ ^B.01 |source /usr/local/app/Gaussian/g16.profile | ^C.01 |source /usr/local/app/Gaussian/C.01/g16.profile | \\ === 並列数の指定 === 並列処理を行うためには、入力ファイルに'CPU=0-N'を指定してください。\\ NProc=Nでは正常に並列処理が行われません。\\ \\ === 実行方法 === 以下のコマンドで実行します。 source /usr/local/app/Gaussian/g16.profile g16 入力ファイル (例) g16 test0000.com