TSUBAME3.0利用の手引き

 

 

 

 

 

 

 

 

 

8

20171026

 

 


目次

1.    TSUBAME3.0概要· 1

1.1.    システム概念· 1

1.2.    計算ノードの構成· 2

1.3.    ソフトウェア構成· 3

1.4.    ストレージ構成· 3

2.    システム利用環境· 4

2.1.    アカウントの取得· 4

2.2.    ログイン方法· 4

2.3.    パスワード管理· 5

2.4.    ストレージサービス(CIFS) 5

3.    ユーザ利用環境· 6

3.1.    利用環境の切換え方法· 6

3.1.1. 利用可能なmodule環境の表示· 6

3.1.2. module環境の設定情報表示· 9

3.1.3. module環境のロード· 9

3.1.4. module環境の表示· 9

3.1.5. module環境のアンロード· 9

3.1.6. module環境の初期化· 10

3.2.    バッチスクリプト内での利用· 10

3.3.    Intelコンパイラ· 11

3.3.1. コンパイルの主なオプション· 11

3.3.2. コンパイルの推奨最適化オプション· 12

3.3.3. Intel 64アーキテクチャーのメモリモデル指定· 13

3.4.    並列化· 13

3.4.1. スレッド並列(OpenMPと自動並列化) 13

3.4.2. プロセス並列(MPI) 14

4.    ジョブスケジューリングシステム· 15

4.1.    利用可能な資源タイプ· 15

4.2.    ジョブの投入· 16

4.2.1. バッチジョブの流れ· 16

4.2.2. ジョブスクリプト· 16

4.2.3. ジョブスクリプトの記述例シングルジョブ/GPUジョブ· 18

4.2.4. ジョブスクリプトの記述例SMP並列· 19

4.2.5. ジョブスクリプトの記述例MPI並列· 20

4.2.6. ジョブスクリプトの記述例プロセス並列/スレッド並列(ハイブリッド) 22

4.2.7. ジョブの投入· 23

4.2.8. ジョブの状態確認· 23

4.2.9. ジョブの削除· 24

4.2.10. ジョブの結果確認· 25

4.3.    インタラクティブジョブの投入· 25

4.3.1. インタラクティブノードを利用したX転送· 25

4.4.    ストレージの利用· 26

4.4.1. Homeディレクトリ· 26

4.4.2. 高速ストレージ領域· 26

4.4.3. ローカルスクラッチ領域· 26

4.4.4. 共有スクラッチ領域· 26

4.5.    SSHログイン· 28

5.    ISVアプリケーション· 30

5.1.    ANSYS 31

5.2.    Fluent 33

5.3.    ABAQUS 37

5.4.    ABAQUS CAE 39

5.5.    Marc & Mentat / Dytran 40

5.5.1. Marc & Mentat / Dytranの概要· 40

5.5.2. Marc & Mentat / Dytranのマニュアル· 40

5.5.3. Marcの使用方法· 40

5.5.4. Mentatの使用方法· 40

5.6.    Nastran 42

5.7.    Patran 44

5.8.    Gaussian 45

5.9.    GaussView 47

5.10.     AMBER 49

5.10.1. AMBERの概要· 49

5.10.2. AMBERの使用方法· 49

5.11.     Materials Studio 53

5.11.1. ライセンス接続設定方法· 53

5.11.2. ライセンス利用状況の確認方法· 54

5.11.3. Materials Studioの起動方法· 55

5.12.     Discovery Studio 56

5.12.1. ライセンス接続設定方法· 56

5.12.2. ライセンス利用状況の確認方法· 57

5.12.3. Discovery Studioの起動方法· 58

5.13.     Mathematica 59

5.14.     Maple 61

5.15.     AVS/Express 63

5.16.     AVS/Express PCE 64

5.17.     LS-DYNA 65

5.17.1. LS-DYNAの概要· 65

5.17.2. LS-DYNAの使用方法· 65

5.18.     LS-PrePost 69

5.18.1. LS-PrePostの概要· 69

5.18.2. LS-PrePostの使用方法· 69

5.19.     COMSOL 71

5.20.     Schrodinger 72

5.21.     MATLAB 73

5.22.     Allinea Forge 74

6.    フリーウェア· 75

6.1.    量子化学/MD関連ソフトウェア· 76

6.1.1. GAMESS 76

6.1.2. Tinker 76

6.1.3. GROMACS 77

6.1.4. LAMMPS 78

6.1.5. NAMD 78

6.1.6. CP2K 79

6.2.    CFD関連ソフトウェア· 80

6.2.1. OpenFOAM 80

6.3.    機械学習、ビックデータ解析関連ソフトウェア· 81

6.3.1. CuDNN 81

6.3.2. NCCL 81

6.3.3. Caffe 81

6.3.4. Chainer 82

6.3.5. TensorFlow 82

6.3.6. R 82

6.3.7. Apache Hadoop 83

6.4.    可視化関連ソフトウェア· 84

6.4.1. POV-Ray 84

6.4.2. ParaView 84

6.4.3. VisIt 84

6.5.    その他フリーウェア· 85

6.5.1. gimp 85

6.5.2. gnuplot 85

6.5.3. tgif 85

6.5.4. ImageMagick 85

6.5.5. pLaTeX2e 86

6.5.6. Java SDK 86

6.5.7. PETSc 86

6.5.8. fftw 87

改定履歴· 88


1. TSUBAME3.0概要

1.1. システム概念

本システムは、東京工業大学における種々の研究・開発部門から利用可能な共有計算機です。本システムの倍精度総理論演算性能は12.15PFLOPS、総主記憶容量は135TiB、磁気ディスク容量は15.9PBです。各計算ノード及びストレージシステムはOmni-Pathによる高速ネットワークに接続され、また現在は10Gbpsの速度でインターネットに接続、将来的にはSINET5を経由し10Gbpsの速度でインターネットに接続されます(20178月時点)。TSUBAME3.0の全体概念を以下に示します。

 

11 TSUBAME3.0の概念図

 


 

1.2. 計算ノードの構成

本システムの計算ノードはSGI ICE XA 540ノードで構成されたブレード型大規模クラスタシステムです。1台の計算ノードには、Intel Xeon E5-2680 v4(2.4GHz14core)2基搭載し、総コア数は15,120コアとなります。また、主記憶容量は計算ノードあたり256GiBを搭載し、総主記憶容量は、135TiBとなります。各計算ノードは、Intel Omni-Pathインタフェースを4ポート有しており、Omni-Pathスイッチによりファットツリーで接続されます。

TSUBAME3.0の完成予想図

12 SGI ICE XA

 

TSUBAME3.0のマシンの基本スペックは次の通りです.

11計算ノードの構成

演算部名

計算ノード  540

ノード構成

(1台あたり)

CPU

Intel Xeon E5-2680 v4 2.4GHz× 2CPU

コア数/スレッド

14コア / 28スレッド×2CPU

メモリ

256GiB

GPU

NVIDIA TESLA P100 for NVlink-Optimized Servers ×4

SSD

2TB

インターコネクト

Intel Omni-Path HFI 100Gbps  ×4

 

 


 

1.3. ソフトウェア構成

本システムのオペレーティングシステム(OS)は、下記の環境を有しています。

 

l  SUSE Linux Enterprise Server 12 SP2

 

OS構成は、サービス実行形態に応じて動的に変更されます。

 

また、本システムで利用可能なアプリケーションソフトウェアに関しては

6. ISVアプリケーション」、「7. フリーウェア」を参照ください。

 

 

1.4. ストレージ構成

本システムでは、様々なシミュレーション結果を保存するための高速・大容量のストレージを備えています。計算ノードでは高速ストレージ領域としてLustreファイルシステムにより、HomeディレクトリはGPFS+cNFSによりファイル共有されています。また、各計算ノードにローカルスクラッチ領域として2TBSSDが搭載されています。本システムで利用可能な、各ファイルシステムの一覧を以下に示します。

1‑2 TSUBAME3.0のファイルシステム

用途

マウント

容量

ファイルシステム

備考

Homeディレクトリ

/home

40TB

GPFS+cNFS

 

共有アプリケーション配備

/apps

高速ストレージ領域1

/gs/hs0

4.8PB

Lustre

 

高速ストレージ領域2

/gs/hs1

4.8PB

Lustre

 

高速ストレージ領域3

/gs/hs2

4.8PB

Lustre

 

ローカルスクラッチ領域

/scr

各ノード1.9TB

xfsSSD)

 

 

2. システム利用環境

2.1. アカウントの取得

本システムを利用するには、予め利用申請を行い、ユーザIDを取得する必要があります。

学外利用者、学内利用者、臨時利用者の場合で新規利用申請の方法が異なります。それぞれの利用者区分についての操作は、TSUBAME3.0ポータル利用説明書を参照ください。

 

2.2. ログイン方法

ログインノードにアクセスするためには、ログインに使うSSH公開鍵をアップロードする必要があります。公開鍵の登録の操作は、TSUBAME3.0ポータル利用説明書を参照ください。

本システムを利用するには、まずログインノードにログインする必要があります。ログインノードへのログインは、ロードバランサによる自動振り分けが行われます。利用イメージを以下に示します。

 

21 計算機の利用イメージ

 

ログイン先には、SSHで接続します。また、ファイル転送はSFTPで接続します。

login.t3.gsic.titech.ac.jp

 

任意のログインノードにログインしたい場合は、以下のホスト名(FQDN)を指定してください。

login0.t3.gsic.titech.ac.jp

login1.t3.gsic.titech.ac.jp

 

 

 

最初にログインする際、クライアントの設定によっては以下のようなメッセージが出ることが有ります。その場合は ”yes” と入力してください。

The authenticity of host ' login0.t3.gsic.titech.ac.jp (131.112.3.21)' can't be established.

ECDSA key fingerprint is SHA256:RImxLoC4tBjIYQljwIImCKshjef4w7Pshjef4wtBj

Are you sure you want to continue connecting (yes/no)?

 

ログインノードには、プロセスあたり4GBのメモリ制限があります。プログラムの実行は、ジョブスケジューラを経由して実行してください。ジョブスケジューラに関しては4. ジョブスケジューリングシステム」を参照ください。

 

2.3. パスワード管理

本システムのユーザアカウントはLDAPサーバで管理され、システム内の認証はSSHの鍵認証で行っています。このため、計算ノードの利用にあたってパスワードを意識する必要はありませんが、学内から高速ストレージへのアクセスなどパスワードが必要になるケースがあります。

パスワードの変更が必要になる場合は、 TSUBAME3.0利用ポータルから行ってください。パスワードのルールについては、TSUBAME3.0利用ポータルのパスワード設定のページをご覧ください。

 

2.4. ストレージサービス(CIFS)

TSUBAME3.0では、高速ストレージ領域に対して学内のWindows/Mac端末からCIFSによるアクセスが可能です。以下のアドレスでアクセスすることができます。

 

 \\gshs.t3.gsic.titech.ac.jp

 

アカウントはTSUBAME3.0のアカウント、パスワードはポータルで設定したパスワードになります。Windowsからアクセスする際には、以下のようにTSUBAMEドメインを指定してください。

 

ユーザー名     TSUBAME\<TSUBAME3.0アカウント名>

パスワード     <TSUBAME3.0アカウントのパスワード>

 

/gs/hs0/gs/hs1/gs/hs2に対応して、T3_HS0T3_HS1T3_HS2となっています。グループディスクとして購入したディレクトリへアクセスしてください。

3. ユーザ利用環境

3.1. 利用環境の切換え方法

本システムでは、moduleコマンドを使用することでコンパイラやアプリケーション利用環境の切り替えを行うことができます。

 

3.1.1.利用可能なmodule環境の表示

利用可能なmodule環境はmodule availまたはmodule avaで確認できます。

 

$ module avail

 

現在利用可能なmodule環境を以下に示します。

31 利用可能なmodule環境(開発環境)

Module

Module file

Module fileの内容

備考

コンパイラ

intel/17.0.4.196

Intel Compiler 17.0.4.196

 

intel/16.0.4.258

Intel Compiler 16.0.4.258

 

pgi/17.5

PGI Compiler 17.5

 

cuda/8.0.44

CUDA8.0.44

 

cuda/8.0.61

CUDA8.0.61

 

MPIライブラリ

intel-mpi/17.3.196

Intel MPI2017.3.196

 

openmpi/2.1.1

OpenMPI2.1.1

 

mpt/2.16

SGI MPT 2.16

 

プログラムツール

intel-ins/17.1.3.510645

Intel Inspector 2017 Update 3 (build 510645)

 

intel-itac/17.3.030

Intel Trace Analyzer and Collector 2017.3.030

 

intel-vtune/17.4.0.518798

Intel VTune Amplifier XE 2017 Update 4

 

allinea/7.0.5

Allinea Forge 7.0.5

 

papi/5.5.1

PAPI 5.5.1

 

perfsuite/1.1.4

SGI PerfSuite 1.1.4

 


 

 

32 利用可能なmodule環境(ISVアプリケーション)

 

Module

Module file

Module fileの内容

備考

ISVアプリケーション

abaqus/2017

ABAQUS 2017

 

nastran/2017.1

Nastran 2017.1

 

dytran/2017

Dytran 2017

 

marc_mentat/2017

Marc/Mentat 2017

 

patran/2017.0.2

Patran 2017.0.2

 

lsdyna/R9.1.0

LS-DYNA R9.1.0

 

lsprepost/4.3

LS-PrePost 4.3

 

ansys/R18.1

ANSYS R18.1

 

comsol/53

COMSOL 5.3

 

gaussian16/A03

Gaussian 16 A.03

 

gaussian16_linda/A03

Gaussian 16 linda対応

 

gaussview/6

GaussView 6

 

amber/16

Amber16

 

amber/16_cuda

Amber16cuda8対応

 

schrodinger/Feb-17

Schrodinger Feb-17

 

matlab/R2017a 

Matlab R2017a

 

mathematica/11.1.1

Mathematica 11.1.1

 

maple/2016.2

Maple 2016.2

 

avs/8.4

AVS/Express

AVS/Express PCE 8.4

 

 


 

33 利用可能なmodule環境(フリーウェア)

Module

Module file

Module fileの内容

備考

フリーウェア

gamess/apr202017r1

GAMESSApril 20 2017 R1

 

tinker/8.1.2

TINKER 8.1.2

 

gromacs/2016.3

GROMACS 2016.3

 

lammps/31mar2017

LAMMPS31 Mar 2017

 

namd/2.12

NAMD 2.12

 

cp2k/4.1

CP2K 4.1

 

openfoam/4.1

OpenFOAM 4.1

 

cudnn/5.1

NVIDIA cuDNN 5.1

 

cudnn/6.0

NVIDIA cuDNN 6.0

 

cudnn/7.0

NVIDIA cuDNN 7.0

 

nccl/1.3.4

NVIDIA NCCL 1.3.4

 

python-extension/2.7.9

python-extension2.7.9

 

r/3.4.1

R3.4.1

 

hadoop/2.8.0

Hadoop 2.8.0

 

pov-ray/3.7.0.3

POV-Ray 3.7.0.3

 

paraview/5.0.1

ParaView 5.0.1

 

visit/2.12.3

VisIt 2.12.3

 

gimp/2.8.22

GIMP 2.8.22

 

gnuplot/5.0.6

gnuplot 5.0.6

 

tgif/4.2.5

Tgif 4.2.5

 

imagemagick/7.0.6

ImageMagick 7.0.6

 

texlive/20170704

TeX Live 20170704

 

xpdf/3.04

Xpdf 3.04

 

a2ps/4.14

a2ps 4.14

 

tmux/2.5

tmux 2.5

 

jdk/1.8.0_131

JDK 8 Update 131

 

jdk/1.8.0_144

JDK 8 Update 144

 

php/7.1.6

PHP 7.1.6

 

petsc/3.7.6/real

PETSc 3.7.6 real

 

petsc/3.7.6/complex

PETSc 3.7.6complex

 

fftw/2.1.5

FFTW 2.1.5

 

fftw/3.3.6

FFTW 3.3.6

 

 

 

 

3.1.2.module環境の設定情報表示

module環境の設定情報を確認したい場合、「module whatisモジュール名」を実行します。

 

$ module whatis intel/17.0.4.196

intel/17.0.4.196     : Intel Compiler version 17.0.4.196 (parallel_studio_xe_2017) and MKL

 

 

3.1.3.module環境のロード

module環境をロードしたい場合、「module load モジュール名」を実行します。

 

$ module load intel/17.0.4.196

 

バッチスクリプトにおいてロードするmoduleは、コンパイル時と同様のものをロードしてください。

 

 

3.1.4.module環境の表示

現在使用しているmodule環境を確認したい場合、「module list」を実行します。

 

$ module list

Currently Loaded Modulefiles:

1) intel/17.0.4.196   2) cuda/8.0.61

 

 

3.1.5.module環境のアンロード

ロードしたmodule環境をアンロードしたい場合「module unload モジュール名」を実行します。

 

$ module list

Currently Loaded Modulefiles:

  1) intel/17.0.4.196   2) cuda/8.0.61

$ module unload cuda

$ module list

Currently Loaded Modulefiles:

1) intel/17.0.4.196

 

 

 

3.1.6.module環境の初期化

ロードしたmodule環境を初期化したい場合、「module purge」を実行します。

 

$ module list

Currently Loaded Modulefiles:

 1) intel/17.0.4.196   2) cuda/8.0.61

$ module purge

$ module list

No Modulefiles Currently Loaded.

 

 

3.2. バッチスクリプト内での利用

バッチスクリプト内でmoduleコマンドを実行する場合、以下のとおり、バッチスクリプト内でmoduleコマンドの初期設定を行う必要があります。

 

【実行シェルがsh, bashの場合】

. /etc/profile.d/modules.sh

module load intel/17.0.4.196

 

【実行シェルがcsh, tcshの場合】

source /etc/profile.d/modules.csh

module load intel/17.0.4.196

 

 


 

3.3. Intelコンパイラ

本システムではコンパイラとして、Intelコンパイラ、PGIコンパイラおよびGNUコンパイラが利用できます。Intelコンパイラの各コマンドは以下のとおりです。

 

34 コマンド名とコマンド形式

コマンド

言語

コマンド形式

ifort

Fortran 77/90/95

$ ifort [オプション] source_file

icc

C

$ icc [オプション] source_file

icpc

C++

$ icpc [オプション] source_file

 

利用する際は、moduleコマンドでintelを読み込んでください。--helpオプションを指定して頂くとコンパイラオプションの一覧が表示されます。

 

3.3.1.コンパイルの主なオプション

コンパイルの最適化オプションを以下に示します。

 

35 コンパイラの主なオプション

オプション

説明

-O0

すべての最適化を無効にします。

-O1

最適化を有効にします。コードサイズを大きくするだけで高速化に影響を与えるような一部の最適化を無効にします。

-O2

最適化を有効にします。一般的に推奨される最適化レベルです。

ベクトル化は O2 以上のレベルで有効になります。Oオプションを指定しない場合、デフォルトでこちらが指定されます。

-O3

O2 よりも積極的に最適化を行い、融合、アンロールとジャムのブロック、IF 文の折りたたみなど、より強力なループ変換を有効にします。

-xCORE-AVX2

Intel プロセッサー向けのIntel アドバンスト・ベクトル・エクステンション 2 (Intel AVX2)Intel AVXSSE4.2SSE4.1SSSE3SSE3SSE2SSE 命令を生成します。Intel AVX2 命令セット対応のIntel プロセッサー向けに最適化します。

-xSSE4.2

Intel プロセッサー向けのIntel SSE4 高効率および高速な文字列処理命令、Intel SSE4 ベクトル化コンパイラ命令およびメディア・アクセラレーター命令、およびIntel SSSE3SSE3SSE2SSE 命令を生成します。Intel SSE4.2 命令セット対応のIntel プロセッサー向けに最適化します。

-xSSSE3

Intel プロセッサー向けのIntel SSSE3SSE3SSE2SSE 命令を生成します。Intel SSSE3 命令セット対応のIntel プロセッサー向けに最適化します。xオプションを指定しない場合、デフォルトでこちらが指定されます。

-qopt-report=n

最適化レポートを生成します。デフォルトでは、レポートは.optrpt 拡張子を持つファイルに出力されます。nには、0  (レポートなし) から5 (最も詳しい) の詳細レベルを指定します。デフォルトは 2 です。

-fp-model precise

浮動小数点演算のセマンティクスを制御します。浮動小数点データの精度に影響する最適化を無効にし、中間結果をソースで定義された精度まで丸めます。

-g

-gオプションはオブジェクト・ファイルのサイズを大きくするシンボリック・デバッグ情報をオブジェクト・ファイルに生成するようにコンパイラに指示します。

-traceback

このオプションは、ランタイム時に致命的なエラーが発生したとき、ソースファイルのトレースバック情報を表示できるように、オブジェクト・ファイル内に補足情報を生成するようにコンパイラに指示します。

致命的なエラーが発生すると、コールスタックの 16 進アドレス (プログラム・カウンター・トレース) とともに、ソースファイル、ルーチン名、および行番号の相関情報が表示されます。

マップファイルとエラーが発生したときに表示されるスタックの 16 進アドレスを使用することで、エラーの原因を特定できます。

このオプションを指定すると、実行プログラムのサイズが増えます。

 

3.3.2.コンパイルの推奨最適化オプション

コンパイルの推奨最適化オプションを以下に示します。本システムに搭載しているIntel Xeon E5-2680 v4は、Intel AVX2命令セットに対応していますので、-xCORE-AVX2オプションを指定することができます。-xCORE-AVX2を指定すると、コンパイラがソースコードを解析し、最適なAVX2AVXSSE命令を生成します。推奨最適化オプションは積極的な最適化を行い、かつ安全なオプションです。最適化のために計算の順序を変更する可能性があり、結果に誤差が生じる場合があります。

 

36 推奨最適化オプション

オプション

説明

-O3

O2 最適化を行い、融合、アンロールとジャムのブロック、IF 文の折りたたみなど、より強力なループ変換を有効にします。

-xCORE-AVX2

 

Intel プロセッサー向けのIntel アドバンスト・ベクトル・エクステンション 2 (Intel AVX2)Intel AVXSSE4.2SSE4.1SSSE3SSE3SSE2SSE 命令を生成します。Intel AVX2 命令セット対応のIntel プロセッサー向けに最適化します。

 

上記のオプションを使用することにより、プログラムの性能が悪化した場合、最適化のレベルを-O2に下げるかベクトル化のオプションを変更してください。また、結果が一致していない場合、浮動小数点のオプションも試してみてください。

 

3.3.3.Intel 64アーキテクチャーのメモリモデル指定

次のいずれかのメモリモデルを使用して実行バイナリを作成します。

 

37 メモリモデル

メモリモデル

説明

small (-mcmodel=small)

コードとデータのすべてのアクセスが、命令ポインター (IP) 相対アドレス指定で行われるように、コードとデータはアドレス空間の最初の 2GB までに制限されます。

-mcmodelオプションを指定しない場合、デフォルトでこちらが指定されます。

medium (-mcmodel=medium)

コードはアドレス空間の最初の 2GB までに制限されますが、データは制限されません。コードは IP 相対アドレス指定でアクセスできますが、データのアクセスは絶対アドレス指定を使用する必要があります。

large (-mcmodel=large)

コードもデータも制限されません。コードもデータもアクセスは絶対アドレス指定を使用します。

 

IP 相対アドレス指定は 32 ビットのみ必要ですが、絶対アドレス指定は 64 ビット必要です。これは、コードサイズとパフォーマンスに影響します。(IP 相対アドレス指定の方が多少速くアクセスできます。)

プログラム内の共通ブロック、グローバルデータ、静的データの合計が2GBを越えるとき、リンク時に次のエラーメッセージが出力されます。

 

<some lib.a library>(some .o): In Function <function>:

  : relocation truncated to fit: R_X86_64_PC32 <some symbol>

…………………

  : relocation truncated to fit: R_X86_64_PC32 <some symbol>

 

この場合は、-mcmodel=medium-shared-intelを指定してコンパイル/リンクして下さい。medium メモリモデルまたは large メモリモデルを指定した場合、Intelのランタイム・ライブラリの適切なダイナミック・バージョンが使用されるように、-shared-intel コンパイラ・オプションも指定する必要があります。

 

3.4. 並列化

3.4.1.スレッド並列(OpenMPと自動並列化)

OpenMP、自動並列化によるスレッド並列によりプログラムの高速化ができます。

OpenMP、自動並列化を使用する場合のコマンド形式を以下に示します。

38 コマンド形式(OpenMP/自動並列化)

 

言語

コマンド形式

OpenMP

Fortran 77/90/95

$ ifort -qopenmp [オプション] source_file

C

$ icc -qopenmp [オプション] source_file

C++

$ icpc -qopenmp [オプション] source_file

自動並列化

Fortran 77/90/95

$ ifort -parallel [オプション] source_file

C

$ icc -parallel [オプション] source_file

C++

$ icpc -parallel [オプション] source_file

 

‘-qopt-report-phase=openmp’ オプションを使用することでOpenMP最適化フェーズのレポートを作成することができます。

-qopt-report-phase=parオプションを使用することで自動並列化フェーズのレポートを作成することができます。

 

3.4.2.プロセス並列(MPI)

Fortran/C/C++ プログラムに MPIライブラリをリンクし、プロセス並列プログラムを作成/実行することができます。MPIを使用する場合のコマンド形式を以下に示します。利用する際は、moduleコマンドで各MPIを読み込んでください。

39 コマンド形式(MPI)

MPIライブラリ

言語

コマンド形式

Intel MPI

Fortran 77/90/95

$ mpiifort [オプション] source_file

C

$ mpiicc [オプション] source_file

C++

$ mpiicpc [オプション] source_file

Open MPI

Fortran 77/90/95

$ mpifort [オプション] source_file

C

$ mpicc [オプション] source_file

C++

$ mpicxx [オプション] source_file

SGI MPT 

Fortran 77/90/95

$ mpif90 [オプション] source_file

C

$ mpicc [オプション] source_file

C++

$ mpicxx [オプション] source_file

 

 

 

 

4. ジョブスケジューリングシステム

本システムのジョブスケジューリングには、シングルジョブ・並列ジョブを優先度や必要なリソースに従い効率的にスケジューリングする、「UNIVA Grid Engine」を採用しています。

4.1. 利用可能な資源タイプ

本システムでは計算ノードを論理的に分割した資源タイプを利用して、システムリソースを確保します。

ジョブ投入の際には、資源タイプをいくつ使うかを指定します(例:-l f_node=2)。利用できる資源タイプの一覧を以下に示します。

 

41TSUBAME3の資源タイプ一覧

資源タイプ

資源タイプ名

使用物理

CPUコア数

メモリ (GB)

GPU

F

f_node

28

240

4

H

h_node

14

120

2

Q

q_node

7

60

1

C1

s_core

1

7.5

0

C4

q_core

4

30

0

G1

s_gpu

2

15

1

 

 

 

 

 

 

 

 

 

 

・「使用物理CPUコア数」、「メモリ(GB)」、「GPU数」は、各資源タイプ1つあたりの使用可能な量です。

・同じ資源タイプを最大72個まで指定できます。資源タイプの組み合わせはできません。

・実行可能時間の最大値は24時間です。

 


 

4.2. ジョブの投入

本システムでジョブを実行するには、ログインノードへログインしてqsubコマンドを実行します。

 

4.2.1.バッチジョブの流れ

 ジョブを投入するためにはジョブスクリプトを作成し投入します。または、コマンドラインにキュー名などを指定してジョブを投入することもできます。投入コマンドは”qsub”です。

 

42 バッチジョブの流れ

順序

説明

1

ジョブスクリプトの作成

2

qsubを使用しジョブを投入

3

qstatなどを使用しジョブの状態確認

4

必要に応じてqdelを使用しジョブのキャンセル

5

ジョブの結果確認

 

qsubコマンドは、課金情報(TSUBAME3ポイント)を確認し、ジョブを受け付けます.

 

4.2.2.ジョブスクリプト

 ジョブスクリプトの記述方法を以下に示します。

 

#!/bin/sh

  #$ -cwd

  #$ -l [資源タイプ名] =[個数]

  #$ -l h_rt=[経過時間]

  #$ -p [プライオリティ]

[moduleの初期化]                                         

[プログラミング環境のロード]                                 

[プログラム実行]

 

・資源タイプの指定などはコマンドラインで指定するか、またはスクリプトファイルの最初のコメントブロック(#$)に記述することで有効になります。資源タイプ、実行時間は必須項目になるため必ず指定するようにしてください。

 

 

 

qsubコマンドの主なオプションを以下に示します。

 

43qsubコマンドの主なオプション

オプション

説明

-l [資源タイプ名] =[個数]

(必須)

資源タイプを指定します。

-l h_rt=[経過時間

(必須)

Wall time(経過時間)を指定します。[[HH:]MM:]SSで指定することができます。HH:MM:SMM:SSSSのように指定することができます。

-N

ジョブ名を指定します。(指定しない場合はスクリプトファイル名)

-o

標準出力ファイル名を指定します。

-e

標準エラー出力ファイル名を指定します。

-m

ジョブについての情報をメールで送信する条件を指定します。

   a   バッチシステムによりジョブが中止された場合

   b   ジョブの実行が開始された場合

   e   ジョブの実行が終了した場合

abeのように組み合わせることも可能です。

-M

送信先メールアドレスを指定します。

-p

(プレミアムオプション)

ジョブの実行優先度を指定します. 1,2を指定すると通常よりも高い課金係数が適用されます.

-5 : 標準の実行優先度です. (デフォルト)

-4 : 実行優先度は-5より高く,-3より低くなります.

-3 : 最高の実行優先度となります.

 


 

4.2.3.ジョブスクリプトの記述例シングルジョブ/GPUジョブ

シングルジョブ(並列化されていないジョブ)を実行する時に作成するバッチスクリプトの例を以下に示します。GPUを使用するジョブも利用するGPUで利用するmoduleの読み込み以外はシングルジョブと同様になります。

 

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

#!/bin/sh

# カレントディレクトリでジョブを実行する場合に指定

#$ -cwd

 

#$ -l f_node=1

# 実行時間を指定

#$ -l h_rt=1:00:00

#$ -N serial

 

# Moduleコマンドの初期化

. /etc/profile.d/modules.sh

# CUDA環境の読込

module load cuda

# Intel Compiler環境の読込

module load intel

./a.out

 

 

 


 

4.2.4.ジョブスクリプトの記述例SMP並列

SMP並列ジョブを実行する時に作成するバッチスクリプトの例を以下に示します。計算ノードはハイパースレッディングが有効になっています。使用するスレッド数につきましては,明示的に指定してください。

 

1

2

3

4

5

6

7

8

9

10

11

12

#!/bin/sh

#$ -cwd

# 資源タイプF 1ノードを使用

#$ -l f_node=1

#$ -l h_rt=1:00:00

#$ -N openmp

. /etc/profile.d/modules.sh

module load cuda

module load intel

# ノード内に28スレッドを配置

export OMP_NUM_THREADS=28

./a.out

 

 


 

4.2.5.ジョブスクリプトの記述例MPI並列

MPI並列ジョブを実行する時に作成するバッチスクリプトの例を以下に示します。使用するMPI環境により使い分けをお願いします。

 

Intel MPI環境

1

2

3

4

5

6

7

8

9

10

11

12

13

#!/bin/sh

#$ -cwd

# 資源タイプF 4ノードを使用

#$ -l f_node=4

#$ -l h_rt=1:00:00

#$ -N flatmpi

. /etc/profile.d/modules.sh

module load cuda

module load intel

# Intel MPI環境の読込

module load intel-mpi

# ノードあたり8プロセスMPI32 プロセスを使用

mpiexec.hydra -ppn 8 -n 32 ./a.out

 

 

OpenMPI環境

1

2

3

4

5

6

7

8

9

10

11

12

13

#!/bin/sh

#$ -cwd

# 資源タイプF 4ノードを使用

#$ -l f_node=4

#$ -l h_rt=1:00:00

#$ -N flatmpi

. /etc/profile.d/modules.sh

module load cuda

module load intel

# Open MPI環境の読込

module load openmpi

# ノードあたり8プロセスMPI32 プロセスを使用

mpirun -npernode 8 -n 32 ./a.out

 

 


 

SGI MPT環境

1

2

3

4

5

6

7

8

9

10

11

12

13

14

#!/bin/sh

#$ -cwd

# 資源タイプF 4ノードを使用

#$ -l f_node=4

#$ -l h_rt=1:00:00

#$ -N flatmpi

. /etc/profile.d/modules.sh

module load cuda

module load intel

# SGI MPT環境の読込

module load mpt

# ノードあたり8プロセスMPI32 プロセスを使用

mpiexec_mpt -ppn 8 -n 32 ./a.out

 

 

 投入したジョブに対して割り当てられているノードリストは、$PE_HOSTFILE にファイルが格納されます。

$ echo $PE_HOSTFILE

/var/spool/uge/r6i0n4/active_jobs/4564.1/pe_hostfile

$ cat /var/spool/uge/r6i0n4/active_jobs/4564.1/pe_hostfile

r6i0n4 28 all.q@r6i0n4 <NULL>

r6i3n5 28 all.q@r6i3n5 <NULL>

 


 

4.2.6.ジョブスクリプトの記述例プロセス並列/スレッド並列(ハイブリッド) 

プロセス並列/スレッド並列(ハイブリッド)のジョブを実行する時に作成するバッチスクリプトの例を以下に示します。使用するMPI環境により使い分けをお願いします。

Intel MPI環境

1

2

3

4

5

6

7

8

9

10

11

12

13

14

#!/bin/sh

#$ -cwd

# 資源タイプF 4ノードを使用

#$ -l f_node=4

#$ -l h_rt=1:00:00

#$ -N hybrid

. /etc/profile.d/modules.sh

module load cuda

module load intel

module load intel-mpi

# ノード内に28スレッドを配置

export OMP_NUM_THREADS=28

# ノードあたりMPI 1プロセス、全4 プロセスを使用

mpirun -ppn 1 -n 4 ./a.out

 

 

 

OpenMPI環境

1

2

3

4

5

6

7

8

9

10

11

12

13

14

#!/bin/sh

#$ -cwd

# 資源タイプF 4ノードを使用

#$ -l f_node=4

#$ -l h_rt=1:00:00            

#$ -N hybrid

. /etc/profile.d/modules.sh

module load cuda

module load intel

module load openmpi

# ノード内に28スレッドを配置

export OMP_NUM_THREADS=28

# ノードあたりMPI 1プロセス、全4 プロセスを使用

mpiexec.hydra -npernode 1 -n 4 ./a.out


 

4.2.7.ジョブの投入

ジョブを実行するために、バッチリクエストを事前に作成する必要があります。qsubコマンドにジョブ投入スクリプトを指定することで、ジョブがキューイングされ実行されます。qsubコマンドを使用してジョブを投入する例を以下に示します。 

 

$ qsub -g [TSUBAME3グループ] スクリプト名

 

44 ジョブ投入時のオプション

オプション

説明

-g

TSUBAME3グループ名を指定します。

スクリプトの中ではなくqsubコマンドのオプションとしてつけてください。グループ指定が未指定の場合は資源タイプ2つまで、経過時間10分間まで、優先度-5の「お試し実行」となります。

 

4.2.8.ジョブの状態確認

qstatコマンドはジョブ状態表示コマンドです。

 

$qstat [オプション]

 

qstatコマンドの主なオプションを以下に示します。

 

45 qstatコマンドのオプション

オプション

説明

-r

ジョブのリソース情報を表示します。

-j [ジョブID]

ジョブに関する追加情報を表示します。

 

qstatコマンドの実行結果を以下に示します。

 

$ qstat

job-IDprior  nameuser   statesubmit/start at  queuejclass  slotsja-task-ID

----------------------------------------------------------------------------------

307 0.55500 sample.sh testuser r 02/12/2015 17:48:10  all.q@r8i6n1A.default32

・・・省略・・・

 

 

 

qstatコマンドの表示内容を以下に示します。

 

46 qstatコマンドの表示内容

表示項目

説明

Job-ID

ジョブIDを表示します。

prior

優先度を表示します。

name

ジョブ名を表示します。

user

ジョブのオーナーを表示します。

state

ジョブのステータスを表示します。

  r  実行中

qw 待機中

  h  ホールド中

  d  削除中

  t  移動中

  s サスペンド状態、一時停止

サスペンド状態、キューのサスペンド状態

  T サスペンド状態、制限超過によるサスペンド

  E  エラー状態

submit/start at

投入/開始日時を表示します。

queue

キュー名を表示します。

jclass

ジョブクラス名を表示します。

slot

利用しているスロット数を表示します。

 

4.2.9.ジョブの削除

 バッチジョブを削除する場合には、qdelコマンドを使用します。

 

$ qdel[ジョブID]

 

以下にジョブをqdelした結果を示します。

 

$ qstat

job-IDprior  nameuser   statesubmit/start at  queuejclass  slotsja-task-ID

----------------------------------------------------------------------------------

307 0.55500 sample.sh testuser r 02/12/2015 17:48:10  all.q@r8i6n1A.default32

 

$ qdel 307

testuser has registered the job 307 for deletion

 

$ qstat

job-IDprior  nameuser   statesubmit/start at  queuejclass  slotsja-task-ID

----------------------------------------------------------------------------------

 

 

4.2.10.ジョブの結果確認

UGEのジョブの標準出力はジョブを実行したディレクトリの「スクリプトファイル名.oジョブID」というファイルに保管されます。また、標準エラー出力は「スクリプトファイル名.eジョブID」です。

 

4.3. インタラクティブジョブの投入

本システムのジョブスケジューラでは、インタラクティブにプログラムやシェルスクリプトを実行する機能を有しています。インタラクティブジョブを実行するためには、qrshコマンドを使用し、-lで資源タイプ、経過時間を指定します。qrshでジョブ投入後、ジョブがディスパッチされるとコマンドプロンプトが返ってきます。exitにてインタラクティブジョブを終了します。インタラクティブジョブの使用方法を以下に示します。

 

$ qrsh -g [TSUBAME3グループ] -l [資源タイプ]=[個数] -l h_rt=[経過時間]

 

-gオプションのグループ指定が未指定の場合は資源タイプ2つまで、経過時間10分間まで、優先度-5の「お試し実行」となります。

 

資源タイプF 1ノード数、経過時間 10分を指定した例

$  qrsh -g [TSUBAME3グループ] -l f_node=1 -l h_rt=0:10:00

Directory: /home/4/t3-test00

Mon Jul 24 02:51:18 JST 2017

 

4.3.1.インタラクティブノードを利用したX転送

qrshで接続したノードから直接X転送を行う場合は、下記の手順にて接続ください。なお、f_nodeのみが対象となります。

(1) qrshコマンドの実行

(2) 別のターミナルからqrshで割り当てられたノードへのssh接続

 

コマンド実行例

例では2時間接続で、割り当てノードとしてr0i0n0が割り当てられた場合を想定しております。

割り当てノードはコマンド実行時に空いているノードですので、明示的にノードを指定することはできません。

#qrshの実行

$ qrsh -g [TSUBAME3グループ] -l f_node=1 -l h_rt=2:0:0

Thu Sep 21 08:17:19 JST 2017

r0i0n0:~>

 

#qrshを実行したターミナルはそのままで、別のターミナルを立ち上げてください。

Last login: Thu Sep 21 08:16:49 2017 from XXX.XXX.XXX.XXX

login0:~> ssh r0i0n0 YC

r0i0n0:~> module load <読み込みたいアプリケーション>

r0i0n0:~> <実行したいアプリケーションの実行コマンド>

 

 

4.4. ストレージの利用

本システムでは、Homeディレクトリ以外にも 高速ストレージ領域のLustreファイルシステム、ローカルスクラッチ領域のSSD領域、SSDをまとめて作成する共有スクラッチ領域のBeeGFS On Demandといった様々な並列ファイルシステムを 利用することができます.

 

4.4.1.Homeディレクトリ

 ユーザあたり 25GiBを利用できます。

 

4.4.2.高速ストレージ領域

 高速ストレージ領域はLustreファイルシステムで構成され、グループディスクとして購入することで利用することができます。グループディスクの購入方法は「TSUBAME3.0ポータル利用説明書」をご参照ください。

 

4.4.3.ローカルスクラッチ領域

 SSDをローカルスクラッチ領域として使用することができます。利用する際には、$TMPDIRにローカルスクラッチ領域のパスが設定されます。ジョブスクリプトの中で、作業領域のパスを指定することにより参照可能です。

 

4.4.4.共有スクラッチ領域

 資源タイプFf_nodeを利用したバッチスクリプトの場合のみ、確保した複数の計算ノードのSSDをオンデマンドに共有ファイルシステムとして作成するBeeGFS On Demandを利用できます。BeeGFS On Demandを有効にするには、ジョブスクリプトの中で、f_nodeを指定した上で、#$ -v USE_BEEOND=1 を指定してください。BeeGFS On Demand計算ノード上の/beeondにマウントされます。以下はスクリプトの例となります。

 

#!/bin/sh

#$ -cwd

#$ -l f_node=4

#$ -l h_rt=1:00:00

#$ -N flatmpi

#$ -v USE_BEEOND=1

. /etc/profile.d/modules.sh

module load cuda

module load intel

module load intel-mpi

mpiexec.hydra -ppn 8 -n 32 ./a.out

 

 

 


 

 

4.5. SSHログイン

資源タイプf_nodeでジョブを行ったノードには直接sshでログインできます。

確保したノードは以下の手順により、確認することができます。

 

t3-test00@login0:~> qstat -j 1463

==============================================================

job_number:                 1463

jclass:                     NONE

exec_file:                  job_scripts/1463

submission_time:            07/29/2017 14:15:26.580

owner:                      t3-test00

uid:                        1804

group:                      tsubame-users0

gid:                        1800

supplementary group:        tsubame-users0, t3-test-group00

sge_o_home:                 /home/4/t3-test00

sge_o_log_name:             t3-test00

sge_o_path:            /apps/t3/sles12sp2/uge/latest/bin/lx-amd64:/apps/t3/sles12sp2/uge/latest/bin/lx-amd64:/home/4/t3-test00/bin:/usr/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/games

sge_o_shell:                /bin/bash

sge_o_workdir:              /home/4/t3-test00/koshino

sge_o_host:                 login0

account:                    2 0 0 0 0 0 600 0 0 1804 1800

cwd:                        /home/4/t3-test00

hard resource_list:         h_rt=600,f_node=1,gpu=4

mail_list:                  t3-test00@login0

notify:                     FALSE

job_name:                   flatmpi

priority:                   0

jobshare:                   0

env_list:                   RGST_PARAM_01=0,RGST_PARAM_02=1804,RGST_PARAM_03=1800,RGST_PARAM_04=2,RGST_PARAM_05=0,RGST_PARAM_06=0,RGST_PARAM_07=0,RGST_PARAM_08=0,RGST_PARAM_09=0,RGST_PARAM_10=600,RGST_PARAM_11=0

script_file:                flatmpi.sh

parallel environment:  mpi_f_node range: 56

department:                 defaultdepartment

binding:                    NONE

mbind:                      NONE

submit_cmd:                 qsub flatmpi.sh

start_time            1:    07/29/2017 14:15:26.684

job_state             1:    r

exec_host_list        1:    r8i6n3:28, r8i6n4:28    <-- 確保したノード  r8i6n3r8i6n4

granted_req.          1:    f_node=1, gpu=4

usage                 1:    wallclock=00:00:00, cpu=00:00:00, mem=0.00000 GBs, io=0.00000 GB, iow=0.000 s, ioops=0, vmem=N/A, maxvmem=N/A

binding               1:    r8i6n3=0,0:0,1:0,2:0,3:0,4:0,5:0,6:0,7:0,8:0,9:0,10:0,11:0,12:0,13:1,0:1,1:1,2:1,3:1,4:1,5:1,6:1,7:1,8:1,9:1,10:1,11:1,12:1,13, r8i6n4=0,0:0,1:0,2:0,3:0,4:0,5:0,6:0,7:0,8:0,9:0,10:0,11:0,12:0,13:1,0:1,1:1,2:1,3:1,4:1,5:1,6:1,7:1,8:1,9:1,10:1,11:1,12:1,13

resource map          1:    f_node=r8i6n3=(0), f_node=r8i6n4=(0), gpu=r8i6n3=(0 1 2 3), gpu=r8i6n4=(0 1 2 3)

scheduling info:            (Collecting of scheduler job information is turned off)

 

 


 

5. ISVアプリケーション

ライセンス契約上、ISVアプリケーションを利用できる利用者は限られます。東工大に所属する「1.学生証・職員証」以外の利用者は以下に挙げるアプリケーション以外のISVアプリケーションを利用できません。

 

1.  Gaussian/Gauss View

2.  AMBER

3.  Intel Compiler

4.  PGI Compiler

5.  Allinea Forge

 

ISVアプリケーションの一覧表を以下に示します。

ソフトウェア名

概要

ANSYS

解析ソフトウェア

Fluent

解析ソフトウェア

ABAQUS

解析ソフトウェア

ABACUS CAE

解析ソフトウェア

Marc & Mentant / Dytran

解析ソフトウェア

Nastran

解析ソフトウェア

Patran

解析ソフトウェア

Gaussian

量子化学計算プログラム

GaussView

量子化学計算プログラム プリポストツール

AMBER

分子動力学計算プログラム

Materials Studio

化学シミュレーションソフトウェア

Discovery Studio

化学シミュレーションソフトウェア

Mathematica

数式処理ソフトウェア

Maple

数式処理ソフトウェア

AVS/Express

可視化ソフトウェア

AVS/Express PCE

可視化ソフトウェア

LS-DYNA

解析ソフトウェア

LS-PrePost

解析ソフトウェア プリポストツール

COMSOL

解析ソフトウェア

Schrodinger

化学シミュレーションソフトウェア

MATLAB

数値計算ソフトウェア

Allinea Forge

デバッガ

Intel Compiler

コンパイラ

PGI Compiler

コンパイラ

5.1. ANSYS

ANSYSの利用を以下に示します。

$ module load ansys/R18.1

$ ansys181

exitと入力すると終了します。

 

インタラクティブでの利用手順を以下に示します。

$ cd <利用したいディレクトリ>

$ ansys181-i <入力ファイル>

 

バッチキューシステムを使用する場合は、シェルスクリプトを作成しCUIで以下のように実行します。

$ cd <利用したいディレクトリ>

sample.shを利用する場合

$ qsub sample.sh

 

スクリプト例:MPI並列処理

#!/bin/bash

#$ -cwd

#$ -m e

#$ -e uge.err

#$ -o uge.out

#$ -V

#$ -l h_node=1

#$ -l h_rt=0:30:0

 

. /etc/profile.d/modules.sh

module load cuda/8.0.44

module load ansys/R18.1 intel-mpi/17.3.196

 

# ANSYS settings.

INPUT=vm1.dat

ANSYS_CMD=ansys181

NCPUS=4

 

export base_dir=/home/4/t3-test00/isv/ansys

 

${ANSYS_CMD} -b \

-dis \

-mpi intelmpi \

-np ${NCPUS} \

-usessh \

-i ${INPUT} > ${INPUT}.`date '+%Y%m%d%H%M%S'`log 2>&1

 

ANSYSのライセンス利用状況を以下のコマンドで確認できます。

$ lmutil lmstat -S ansyslmd -c 27001@lice0:27001@remote:27001@t3ldap1

 


 

5.2. Fluent

Fluentは熱流体解析アプリケーションです。利用手順を以下に示します。

 

GUIでの起動手順を以下に示します。

$ module load ansys/R18.1

$ fluent

 

 

 

CUIでの起動手順を以下に示します。

$ module load ansys/R18.1

$ fluent -g

exitと入力すると終了します。

 

jounalファイルを使用してインタラクティブに実行する場合は以下のようにコマンドを実行します。

$ cd <利用したいディレクトリ>

$fluent 3d -g -i fluentbench.jou

 

バッチキューシステムを使用する場合は、シェルスクリプトを作成しCUIで以下のように実行します。

$ cd <利用したいディレクトリ>

sample.shを利用する場合

$ qsub sample.sh

 


 

スクリプト例:MPI並列処理(f_node利用時)

#!/bin/bash

#$ -cwd

#$ -e uge.err

#$ -o uge.out

#$ -V

#$ -l f_node=4

#$ -l h_rt=0:30:0

 

. /etc/profile.d/modules.sh

module load cuda/8.0.44

module load ansys/R18.1 intel-mpi/17.3.196

 

export base_dir=/home/4/t3-test00/sts/fluent

 

# FLUENT settings.

export exe=fluent

export LM_LICENSE_FILE=27001@lice0:27001@remote:27001@t3ldap1

export ANSYSLI_SERVERS=2325@lice0:2325@remote:2325@t3ldap1

 

DATE="`date '+%Y%m%d%H%M%S'`"

export INPUT=fluentbench.jou

 

cd ${base_dir}

 

$exe 3d -mpi=intel -cnf=${PE_HOSTFILE} -g -i ${INPUT} > ${INPUT}.${DATE}.log 2>&1

 


 

スクリプト例:MPI並列処理(h_node利用時)

#!/bin/bash

#$ -cwd

#$ -e uge.err

#$ -o uge.out

#$ -V

#$ -l h_node=1

#$ -l h_rt=0:30:0

 

. /etc/profile.d/modules.sh

module load cuda/8.0.44

module load ansys/R18.1 intel-mpi/17.3.196

 

export base_dir=/home/4/t3-test00/sts/fluent

 

# FLUENT settings.

export exe=fluent

export LM_LICENSE_FILE=27001@lice0:27001@remote:27001@t3ldap1

export ANSYSLI_SERVERS=2325@lice0:2325@remote:2325@t3ldap1

 

DATE="`date '+%Y%m%d%H%M%S'`"

export INPUT=fluentbench.jou

 

cd ${base_dir}

 

$exe 3d -ncheck -mpi=intel -cnf=${PE_HOSTFILE} -g -i ${INPUT} > ${INPUT}.${DATE}.log 2>&1

f_node以外の利用では資源をまたぐ設定ができないため、#$ -l {資源名}=1 (例えばh_node では#$ -l h_node=1)とし、コマンド中に「-ncheck」オプションを入れてください。

 

Fluentのライセンス利用状況を以下のコマンドで確認できます。

$ lmutil lmstat -S ansyslmd -c 27001@lice0:27001@remote:27001@t3ldap1

 

 


 

5.3. ABAQUS

インタラクティブでの利用手順を以下に示します。

$ module load abaqus/2017

$ abaqus job=<入力ファイル> <オプション>

 

バッチキューシステムを使用する場合は、シェルスクリプトを作成しCUIで以下のように実行します。

$ cd <利用したいディレクトリ>

sample.shを利用する場合

$ qsub sample.sh

 

スクリプト例:MPI並列処理

#!/bin/bash

#$ -cwd

#$ -V

#$ -l h_node=1

#$ -l h_rt=0:30:0

#$ -N ABAQUS-test

 

. /etc/profile.d/modules.sh

module load cuda/8.0.44

module load abaqus/2017 intel/17.0.4.196

 

export base_dir=/home/4/t3-test00/isv/abaqus/abaqus

 

# ABAQUS settings.

INPUT=s2a

ABAQUS_VER=2017

ABAQUS_CMD=abq${ABAQUS_VER}

SCRATCH=${base_dir}/scratch

NCPUS=2

 

cd ${base_dir}

 

/usr/bin/time ${ABAQUS_CMD} interactive \

job=${INPUT} \

cpus=${NCPUS} \

scratch=${SCRATCH} \

mp_mode=mpi > ${INPUT}.`date '+%Y%m%d%H%M%S'`log 2>&1

 

 

 


 

5.4. ABAQUS CAE

ABAQUS CAEの利用手順を以下に示します。

$ module load abaqus/2017

$ abaqus cae

 

メニューバーの File > Exit をクリックすると終了します。

 


 

5.5. Marc & Mentat / Dytran

5.5.1.Marc & Mentat / Dytranの概要

各製品の概要はエムエスシーソフトウェア株式会社のWebサイトをご参照ください。

Marc: http://www.mscsoftware.com/ja/product/marc

Dytran: http://www.mscsoftware.com/ja/product/dytran

 

5.5.2.Marc & Mentat / Dytranのマニュアル

下記ドキュメントをご参照ください。

Marc & Mentat Docs mscsoftware.com

Dytran Docs mscsoftware.com

 

5.5.3.Marcの使用方法

インタラクティブでの利用手順を以下に示します。

$ cd <利用したいディレクトリ>

$ module load intel intel-mpi cuda marc_mentat/2017

サンプルファイル(e2x1.dat)の場合

$ cp /apps/t3/sles12sp2/isv/msc/marc/marc2017/demo/e2x1.dat ./

$ marc -jid e2x1

 

5.5.4.Mentatの使用方法

Mentatの起動手順を以下に示します。                                              

$ cd <利用したいディレクトリ>

$ module load intel intel-mpi cuda marc_mentat/2017

$ mentat

メニューバーの File > Exit をクリックすると終了します。

 

Mentatのライセンス利用状況を以下のコマンドで確認できます。

$ lmutil lmstat -S MSC -c 27004@lice0:27004@remote:27004@t3ldap1

 

 

 


5.6. Nastran

Nastranの起動手順を以下に示します。

$ cd <利用したいディレクトリ>

$ module load nastran/2017.1

サンプルファイル (um24.dat) の場合

$ cp /apps/t3/sles12sp2/isv/msc/MSC_Nastran/20171/msc20171/nast/demo/um24.dat ./

$ nast20171 um24

 

Nastranのバッチ投入手順を以下に示します。

$ cd <利用したいディレクトリ>

サンプルファイル (parallel.sh) の場合

$ qsub parallel.sh

 

スクリプト例:CPU並列処理

#!/bin/bash

#$ -cwd

#$ -N nastran_parallel_test_job

#$ -e uge.err

#$ -o uge.out

#$ -l h_node=1

#$ -l h_rt=0:10:00

#$ -V

 

export NSLOTS=4

echo Running on host `hostname`

echo "UGE job id: $JOB_ID"

echo Time is `date`

echo Directory is `pwd`

echo This job runs on the following processors:

echo This job has allocated $NSLOTS processors

 

. /etc/profile.d/modules.sh

module load cuda openmpi nastran/2017.1

 

mpirun -np $NSLOTS \

nast20171 parallel=$NSLOTS um24

 

/bin/rm -f $in restrt

 

Nastranのライセンス利用状況を以下のコマンドで確認できます。

$ lmutil lmstat -S MSC -c 27004@lice0:27004@remote:27004@t3ldap1

 

 


 

5.7. Patran

Patranの起動手順を以下に示します。                                              

$ cd <利用したいディレクトリ>

$ module load patran/2017.0.2

$ pat2017

 

終了する際はFile>EXIT

 

Patranのライセンス利用状況を以下のコマンドで確認できます。

$ lmutil lmstat -S MSC -c 27004@lice0:27004@remote:27004@t3ldap1

 

 

 


 

5.8. Gaussian

Gaussianの利用手順を以下に示します。

 

インタラクティブでの利用手順を以下に示します。

$ module load gaussian16/A03

$ g16(入力ファイル名)

 

Linda並列版では

$ module load gaussian16_linda/A03

$ g16(入力ファイル名)

 

バッチ入力用のコマンドは

$ qsub (入力スクリプト名)

となります。

 

スクリプト例:ノード内並列処理

Glycineの構造最適化および振動解析(IR+ラマン強度)を計算する場合のサンプルスクリプトです。

下記のglycine.shglycine.gjfを同一ディレクトリ上に配置し、下記コマンドを実行することで計算ができます。計算後にglycinetest.logglycinetest.chkが生成されます。

解析結果の確認についてはGaussViewにてご説明します。

$ qsub glycine.sh

 

glycine.sh

#!/bin/bash

#$ -cwd

#$ -N Gaussian_sample_job

#$ -l f_node=1

#$ -l h_rt=0:10:0

#$ -V

 

#下記は必須ではありません。-Nで指定した名称.o<JOBID>ファイルに記載されます

echo Running on host `hostname`

echo "UGE job id: $JOB_ID"

echo Time is `date`

echo Directory is `pwd`

echo This job runs on the following processors:

echo This job has allocated $NSLOTS processors

 

#以下は必須です。

. /etc/profile.d/modules.sh

module load gaussian16/A03

 

g16 glycinetest.gjf

glycine.gjf

%rwf=glycinetest.rwf

%NoSave

%chk=glycinetest.chk

%nprocshared=28

%mem=120GB

#P opt=(calcfc,tight,rfo) freq=(raman)

 

glycine Test Job

 

0 2

 N                0   -2.15739574   -1.69517043   -0.01896033 H

 H                0   -1.15783574   -1.72483643   -0.01896033 H

 C                0   -2.84434974   -0.41935843   -0.01896033 H

 C                0   -1.83982674    0.72406557   -0.01896033 H

 H                0   -3.46918274   -0.34255543   -0.90878333 H

 H                0   -3.46918274   -0.34255543    0.87086267 H

 O                0   -0.63259574    0.49377357   -0.01896033 H

 O                0   -2.22368674    1.89158057   -0.01896033 H

 H                0   -2.68286796   -2.54598119   -0.01896033 H

 

 1 2 1.0 3 1.0 9 1.0

 2

 3 4 1.0 5 1.0 6 1.0

 4 7 1.5 8 1.5

 5

 6

 7

 8

 9


 

5.9. GaussView

GaussViewGaussianの結果を可視化するアプリケーションです。

GaussViewの利用手順を以下に示します。

 

$ module load gaussian16/A03 gaussview/6

$ gview.exe

 

 

メニューバーから File > Exit をクリックすると終了します。

 

解析例:glycine.log

Gaussianの項にてサンプルとして例示しているスクリプトを実行した結果ファイルの解析を例にご説明します。

$ module load gaussian16/A03 gaussview/6

$ gview.exe glycine.log

Resultから解析結果の確認が可能です。

Result>Summaryにて計算の概要、Result>ChageDistribution…で電荷情報、Vibration…から振動解析の結果を確認できます。

サンプルでは振動解析を行っているので、VibrationダイアログのStartAnimationから振動の様子を確認できます。


 

5.10.        AMBER

5.10.1.AMBERの概要

AMBERは本来タンパク質・核酸の分子動力学計算のために開発されたプログラムですが、最近では糖用のパラメータも開発され、化学・生物系の研究のために益々有用なツールとなってきました。ご自分の研究で利用する場合は、マニュアルや関 連する論文等の使用例をよく調べて、AMBERが採用しているモデルや理論の限界、応用範囲等を把握しておくことが必要です。現在、AMBERはソースコードを無制限にコピーすることはできませんが、東工大内部で利用することは可能なので、これを基にさらに発展した手法を取り込むことも可能です。現在AMBER 16+ AmberTools17が利用可能です。

 

5.10.2.AMBERの使用方法

(1) インタラクティブでの逐次処理の場合の利用手順を以下に示します。

$ cd <利用したいディレクトリ>

$ module load amber/16

$ sander [-O|A] -i mdin -o mdout -p prmtop -c inpcrd -r restrt

 

(2) インタラクティブでの並列処理(sander.MPI)の場合の利用手順を以下に示します。

$ cd <利用したいディレクトリ>

$ module load amber/16

$ mpirun -np -[並列数] sander.MPI [-O|A] -i mdin -o mdout -p prmtop -c inpcrd -r restrt

 

(3) インタラクティブでのGPU逐次処理(pmemd.cuda)の場合の利用手順を以下に示します。

$ cd <利用したいディレクトリ>

$ module load amber/16_cuda

$ pmemd.cuda [-O] -i mdin -o mdout -p prmtop -c inpcrd -r restrt

 

(4) インタラクティブでのGPU並列処理(pmemd.cuda.MPI)の場合の利用手順を以下に示します。

$ cd <利用したいディレクトリ>

$ module load amber/16_cuda

$ mpirun -np -[並列数] pmemd.cuda.MPI [-O] -i mdin -o mdout -p prmtop -c inpcrd -r restrt

 

(5) バッチキューシステムの場合の利用手順を以下に示します。

$ cd <利用したいディレクトリ>

parallel.shを利用する場合

$ qsub parallel.sh

 

 

スクリプト例:CPU並列処理

#!/bin/bash

#$ -cwd

#$ -N amber_parallel_test_job

#$ -e uge.err

#$ -o uge.out

#$ -l h_node=2

#$ -l h_rt=6:00:00

#$ -V

export NSLOTS=8

echo Running on host `hostname`

echo "UGE job id: $JOB_ID"

echo Time is `date`

echo Directory is `pwd`

echo This job runs on the following processors:

echo This job has allocated $NSLOTS processors

 

in=./mdin

out=./mdout_para

inpcrd=./inpcrd

top=./top

 

cat <<eof > $in

 Relaxtion of trip cage using

&cntrl                                                                       

  imin=1,maxcyc=5000,irest=0, ntx=1,

  nstlim=10, dt=0.001,

  ntc=1, ntf=1, ioutfm=1

  ntt=9, tautp=0.5,

  tempi=298.0, temp0=298.0,

  ntpr=1, ntwx=20,

  ntb=0, igb=8,

  nkija=3, gamma_ln=0.01,

  cut=999.0,rgbmax=999.0,

  idistr=0

 /

eof

 

. /etc/profile.d/modules.sh

module load amber/16

 

mpirun -np $NSLOTS \

sander.MPI -O -i $in -c $inpcrd -p $top -o $out < /dev/null

 

/bin/rm -f $in restrt

 

スクリプト例:GPU並列処理

#!/bin/bash

#$ -cwd

#$ -N amber_cuda_parallel_test_job

#$ -e uge.err

#$ -o uge.out

#$ -l h_node=2

#$ -l h_rt=0:30:0

#$ -V

 

export NSLOTS=8

echo Running on host `hostname`

echo "UGE job id: $JOB_ID"

echo Time is `date`

echo Directory is `pwd`

echo This job runs on the following GPUs:

echo This job has allocated $NSLOTS GPUs

 

in=./mdin

out=./mdout

inpcrd=./inpcrd

top=./top

 

cat <<eof > $in

FIX (active) full dynamics ( constraint dynamics: constant volume)

&cntrl

   ntx = 7,       irest = 1,

   ntpr = 100,     ntwx = 0,     ntwr = 0,

   ntf = 2,       ntc = 2,       tol = 0.000001,

   cut = 8.0,

   nstlim = 500,  dt = 0.00150,

   nscm = 250,

   ntt = 0,

   lastist = 4000000,

   lastrst = 6000000,

 /

eof

 

. /etc/profile.d/modules.sh

module load amber/16_cuda

 

mpirun -np $NSLOTS \

pmemd.cuda.MPI -O -i $in -c $inpcrd -p $top -o $out < /dev/null

 

/bin/rm -f $in restrt

 


 

5.11.        Materials Studio

5.11.1.ライセンス接続設定方法

スタートメニューから すべてのプログラム > BIOVIA > Licensing > License Administrator 7.6.14 を管理者として実行します。

自動生成された代替テキスト: 囲BIOVIAL.censeAdmin.strator
日Ie少IP
'LICenseAdministrator
胆を1正囲団圏正並m血な豆」日日
'LlcenseFlle
Administration
bstallLicense
降questLicense
InstallTemporaryLicense
'LicenseServer
GonneCtionS
Administration
UsageReport
』Diagnostics
LicenseTest
DiagnostlcsReport
offlineACCeSS
口1回
onhgurationSummary
LicensePackVとrsion:7方14.149
LicensePackLocation:C:¥ProgramFiles(x86)¥BIOVIA¥LicensePack¥
LicenseFIIeDirectory:C:¥ProgramFiles(x86)¥BIOVIA¥LicensePack¥Licenses
LicenseFIIebstalled:No
TemporaryLicenseFileIhstalled:No
ServerConnections:Notapplicable
ServerLicensePackVersion:Notapplicable
ServerStatus:Notapplicable
[Server少ta'‘』【He'p』

 

[Connections] を開き、[Set] をクリックして Set License Server ダイアログを開きます。

自動生成された代替テキスト: 囲BIOVIALlcense^dmin.strator
口1回
EIIe少IP
'LICenseAdministrator
GonfigurationSummary
'LICenseFile
Administration
bstallLicense
降questLicense
InstallTemporaryLicense
'LicenseServer
国並恋拭内拍日日日日日日日『】
Administration
UsageReport
』Diagnostics
LicenseTest
DiagnostlcsReport
offlineACCeSS
LIC6nseSeFVeFCOnneCtionS
ServerStatus:
Notapplicable
【郵t.→)1少move』[Server少ta'‘』【He'p』

 

Redundant servers にチェックを入れ、ホスト名とポート番号を下図のように入力し、[OK] をクリックします。

自動生成された代替テキスト: SetLICenseseFVe円
Hostname:liceo
Hastname:remote
−…
HOStname
PO『tl
t3ldap1
27005
図少dundantservers
1OK)【Gance‘】1He'p]

 

Server Status Connected と表示されれば設定完了です。

Materials Studioを利用するためには、2ホスト以上のライセンスサーバーへの接続が確立している必要があります。

 

 

5.11.2.ライセンス利用状況の確認方法

(1) Windowsでの確認方法

スタートメニューから すべてのプログラム > BIOVIA > Licensing > License Administrator 7.6.14 > Utilities (FLEXlm LMTOOLs) を実行します。

 

[Service/License File] タブを開き、 [Configulation using License File] を選択します。

MSI_LICENSE_FILE と表示されていることを確認します。

自動生成された代替テキスト: LMTOOLSbyFlexeraSoftwareLLC
亡コld旦
FileEditMode
数蝉タ些蝉手万鷺1
Help
SWtemSettings
Utilities
Stop/Reread
sw'tchRePortLo.1Ser児rs'a'us1Ser臓rDia.51Borrow'n.
NormallytheIlcense栃le15alreadyspeci栃ed.To0鵬rrideitsetithere
LICengeFile
P「
9oon価じurationusinじLicenseFIIe
rCon栃gurationusingSer功ces
1Browse1
l
「LMT00LS1じnoreslicenseflePathen功ronment粕riables
lrU

 

[Server Status] タブを開き、[Perform Status Enqurity] をクリックすると、ライセンスの利用状況が表示されます。

特定のライセンスのみを表示したい場合は、[Individual Feature] に表示したいライセンス名を入力して [Perform Status Enqurity] を実行します。

 

(2) ログインノード上での確認方法

以下のコマンドを実行すると、利用状況が表示されます。

$ lmutil lmstat -S msi -c 27005@lice0,27005@remote,27005@t3ldap1

 

 

5.11.3.Materials Studioの起動方法

Materials StudioがインストールされたWindows環境においてスタートメニューを表示し、BIOVIA > Materials Studio 2017 R2 をクリックして起動します。


 

5.12.        Discovery Studio

5.12.1.ライセンス接続設定方法

スタートメニューから すべてのプログラム > BIOVIA > Licensing > License Administrator 7.6.14 を管理者として実行します。

自動生成された代替テキスト: 囲BIOVIAL.censeAdmin.strator
日Ie少IP
'LICenseAdministrator
胆を1正囲団圏正並m血な豆」日日
'LlcenseFlle
Administration
bstallLicense
降questLicense
InstallTemporaryLicense
'LicenseServer
GonneCtionS
Administration
UsageReport
』Diagnostics
LicenseTest
DiagnostlcsReport
offlineACCeSS
口1回
onhgurationSummary
LicensePackVとrsion:7方14.149
LicensePackLocation:C:¥ProgramFiles(x86)¥BIOVIA¥LicensePack¥
LicenseFIIeDirectory:C:¥ProgramFiles(x86)¥BIOVIA¥LicensePack¥Licenses
LicenseFIIebstalled:No
TemporaryLicenseFileIhstalled:No
ServerConnections:Notapplicable
ServerLicensePackVersion:Notapplicable
ServerStatus:Notapplicable
[Server少ta'‘』【He'p』

 

[Connections] を開き、[Set] をクリックして Set License Server ダイアログを開きます。

自動生成された代替テキスト: 囲BIOVIALlcense^dmin.strator
口1回
EIIe少IP
'LICenseAdministrator
GonfigurationSummary
'LICenseFile
Administration
bstallLicense
降questLicense
InstallTemporaryLicense
'LicenseServer
国並恋拭内拍日日日日日日日『】
Administration
UsageReport
』Diagnostics
LicenseTest
DiagnostlcsReport
offlineACCeSS
LIC6nseSeFVeFCOnneCtionS
ServerStatus:
Notapplicable
【郵t.→)1少move』[Server少ta'‘』【He'p』

 

Redundant servers にチェックを入れ、ホスト名とポート番号を下図のように入力し、[OK] をクリックします。

自動生成された代替テキスト: SetLICenseseFVe円
Hostname:liceo
Hastname:remote
−…
HOStname
PO『tl
t3ldap1
27005
図少dundantservers
1OK)【Gance‘】1He'p]

 

Server Status Connected と表示されれば設定完了です。

Discovery Studioを利用するためには、2ホスト以上のライセンスサーバーへの接続が確立している必要があります。

 

 

5.12.2.ライセンス利用状況の確認方法

(1) Windowsでの確認方法

スタートメニューから すべてのプログラム > BIOVIA > Licensing > License Administrator 7.6.14 > Utilities (FLEXlm LMTOOLs) を実行します。

 

[Service/License File] タブを開き、 [Configulation using License File] を選択します。

MSI_LICENSE_FILE と表示されていることを確認します。

自動生成された代替テキスト: LMTOOLSbyFlexeraSoftwareLLC
亡コld旦
FileEditMode
数蝉タ些蝉手万鷺1
Help
SWtemSettings
Utilities
Stop/Reread
sw'tchRePortLo.1Ser児rs'a'us1Ser臓rDia.51Borrow'n.
NormallytheIlcense栃le15alreadyspeci栃ed.To0鵬rrideitsetithere
LICengeFile
P「
9oon価じurationusinじLicenseFIIe
rCon栃gurationusingSer功ces
1Browse1
l
「LMT00LS1じnoreslicenseflePathen功ronment粕riables
lrU

 

[Server Status] タブを開き、[Perform Status Enqurity] をクリックすると、ライセンスの利用状況が表示されます。

特定のライセンスのみを表示したい場合は、[Individual Feature] に表示したいライセンス名を入力して [Perform Status Enqurity] を実行します。

 

(2) ログインノード上での確認方法

以下のコマンドを実行すると、利用状況が表示されます。

$ lmutil lmstat -S msi -c 27005@lice0,27005@remote,27005@t3ldap1

 

 

5.12.3.Discovery Studioの起動方法

Discovery StudioがインストールされたWindows環境においてスタートメニューを表示し、BIOVIA > Discovery Studio 2017 R2 64-bit Client をクリックして起動します。


 

5.13.        Mathematica

CUIでの起動手順を示します。

$ cd <利用したいディレクトリ>

$ module load mathematica/11.1.1

$ math

Mathematica 11.1.1 Kernel for Linux x86 (64-bit)

Copyright 1988-2017 Wolfram Research, Inc.

 

In[1]:=

 

Quitと入力すると終了します。

 

GUIでの起動手順を以下に示します。

$ module load mathematica/11.1.1

$ Mathematica

 

 

終了する場合は、ノートブックのメニューバーから [File]を選択し「Exitをクリックします」


 

5.14.        Maple

Mapleは数式処理、数値計算アプリケーションです。

Mapleの利用方法の例を以下に示します。

 

CUIでの起動手順を以下に示します。

$ module load maple/2016.2

$ maple

    |\^/|     Maple 2016 (X86 64 LINUX)

._|\|   |/|_. Copyright (c) Maplesoft, a division of Waterloo Maple Inc. 2016

 \  MAPLE  /  All rights reserved. Maple is a trademark of

<____ ____>  Waterloo Maple Inc.

      |       Type ? for help.

 

quitと入力すると終了します。

 

GUIでの起動手順を以下に示します。

$ module load maple/2016.2

$ xmaple

 

 

メニューバーの File > Exit をクリックすると終了します。

 

Mapleのライセンス利用状況を以下のコマンドで確認できます。

$ lmutil lmstat -S maplelmg -c 27007@lice0:27007@remote:27007@t3ldap1

 

 


 

5.15.        AVS/Express

AVS/Expressの利用手順を以下に示します。

$ module load avs/8.4

$ xp

 

 

メニューバーの File > Exit をクリックすると終了します。


5.16.        AVS/Express PCE

AVS/Express PCEの利用手順を以下に示します。

$ module load avs/8.4

$ para_start

 

メニューバーの File > Exit をクリックすると終了します。

 

webブラウザで次のURLにアクセスすることにより,ライセンス利用状況を確認できます。

http://lice0:33333/STATUS

 

 


 

5.17.        LS-DYNA

5.17.1.LS-DYNAの概要

LS-DYNAは、陽解法により構造物の大変形挙動を時刻履歴で解析するプログラムで、衝突/衝撃解析、落下解析、塑性加工解析、貫通/亀裂/破壊解析などに威力を発揮し、これらの分野では世界有数の導入実績を誇る信頼性の高いプログラムです。

 

5.17.2.LS-DYNAの使用方法

LS-DYNAはバッチジョブで利用します。利用手順を以下に示します。

SMP単精度版】

$ cd <入力データを置いてあるディレクトリ>

run_smps_r9.1.0.shを実行する場合

$ qsub run_smps_r9.1.0.sh

 

SMP倍精度版】

$ cd <入力データを置いてあるディレクトリ>

run_smpd_r9.1.0.shを実行する場合

$ qsub run_smpd_r9.1.0.sh

 

MPP単精度版】

$ cd <入力データを置いてあるディレクトリ>

run_mpps_r9.1.0-1node-avx2.shを実行する場合

$ qsub run_mpps_r9.1.0-1node-avx2.sh

 

MPP倍精度版】

$ cd <入力データを置いてあるディレクトリ>

run_mppd_r9.1.0-1node-avx2.shを実行する場合

$ qsub run_mppd_r9.1.0-1node-avx2.sh

 

スクリプト例:SMP単精度版

#!/bin/bash

#$ -cwd

#$ -V

#$ -l h_node=1

#$ -l h_rt=0:30:0

 

. /etc/profile.d/modules.sh

module load cuda/8.0.44

module load lsdyna/R9.1.0

 

export base_dir=/home/4/t3-test00/isv/lsdyna

cd $base_dir/smp_s

 

export exe=smpdynas

 

#export LSTC_LICENSE=network

#export LSTC_MEMORY=auto

 

export NCPUS=4

export OMP_NUM_THREADS=${NCPUS}

export INPUT=$base_dir/sample/airbag_deploy.k

 

${exe} i=${INPUT} ncpus=${NCPUS}

 

スクリプト例:SMP倍精度版

#!/bin/bash

#$ -cwd

#$ -V

#$ -l h_node=1

#$ -l h_rt=0:30:0

 

. /etc/profile.d/modules.sh

module load cuda/8.0.44

module load lsdyna/R9.1.0

 

export base_dir=/home/4/t3-test00/isv/lsdyna

cd $base_dir/smp_d

 

export exe=smpdynad

 

#export LSTC_LICENSE=network

#export LSTC_MEMORY=auto

 

export NCPUS=4

export OMP_NUM_THREADS=${NCPUS}

export INPUT=$base_dir/sample/airbag_deploy.k

 

${exe} i=${INPUT} ncpus=${NCPUS}

 

スクリプト例:MPP単精度版

#!/bin/bash

#$ -cwd

#$ -V

#$ -l h_node=1

#$ -l h_rt=0:30:0

 

. /etc/profile.d/modules.sh

module load cuda/8.0.44

module load lsdyna/R9.1.0 mpt/2.16

 

export base_dir=/home/4/t3-test00/isv/lsdyna

cd $base_dir/mpp_s

 

export exe=mppdynas_avx2

export dbo=l2as_avx2

 

#export LSTC_LICENSE=network

#export LSTC_MEMORY=auto

 

export NCPUS=4

export OMP_NUM_THREADS=1

export INPUT=$base_dir/sample/airbag_deploy.k

 

export MPI_BUFS_PER_PROC=512

export MPI_REMSH=ssh

 

mpiexec_mpt -v -np 4 dplace -s1 ${exe} i=${INPUT} ncpus=${NCPUS}

${dbo} binout*

 

スクリプト例:MPP倍精度版

#!/bin/bash

#$ -cwd

#$ -V

#$ -l h_node=1

#$ -l h_rt=0:30:0

 

. /etc/profile.d/modules.sh

module load cuda/8.0.44

module load lsdyna/R9.1.0 mpt/2.16

 

export base_dir=/home/4/t3-test00/isv/lsdyna

cd $base_dir/mpp_d

 

export exe=mppdynad_avx2

export dbo=l2ad_avx2

 

#export LSTC_LICENSE=network

#export LSTC_MEMORY=auto

 

export NCPUS=4

export OMP_NUM_THREADS=1

export INPUT=$base_dir/sample/airbag_deploy.k

 

export MPI_BUFS_PER_PROC=512

export MPI_REMSH=ssh

 

mpiexec_mpt -v -np 4 dplace -s1 ${exe} i=${INPUT} ncpus=${NCPUS}

${dbo} binout*

 

スクリプトは、利用者の環境に合わせて変更してください。インプットファイルは、シェルスクリプト内でINPUT=<インプットファイル名>として指定します。

 

LS-DYNAののライセンス利用状況を以下のコマンドで確認できます。

$ lstc_qrun

 

 


 

5.18.        LS-PrePost

5.18.1.LS-PrePostの概要

LS-PrePostLS-DYNAと合わせて無償提供されている先進的なプリポストツールになります。 ユーザインターフェースは効率的かつ直感的に扱えるようにデザインされています。 LS-PrePostは高速なレンダリングとXYプロットを実現するためにOpenGLグラフィックスを利用します。

 

5.18.2.LS-PrePostの使用方法

LS-PrePostの起動手順を以下に示します。

$ cd <利用したいディレクトリ>

$ module load lsprepost/4.3

$ lsprepost

 

 _____________________________________________________

 |                                                   |

 |     Livermore Software Technology Corporation     |

 |                                                   |

 |                L S - P R E P O S T                |

 |                                                   |

 |    Advanced Pre- and Post-Processor for LS-DYNA   |

 |                                                   |

 |         LS-PrePost(R) V4.3.11 - 04Jul2017         |

 |                                                   |

 |            LSTC Copyright (C) 1999-2014           |

 |                All Rights Reserved                |

 |___________________________________________________|

 

 OpenGL version 3.0 Mesa 11.2.1

 

メニューバーのFile>Exit をクリックすると終了します。


 

5.19.        COMSOL

COMSOLの利用手順を以下に示します。

$ module load comsol/53

$ comsol

 

 

メニューバーの File > Exit をクリックすると終了します。

 

COMSOLのライセンス利用状況を以下のコマンドで確認できます。

$ lmutil lmstat -S LMCOMSOL -c 27009@lice0:27009@remote:27009@t3ldap1

 


 

5.20.        Schrodinger

Schrodingerの利用手順を以下に示します。

 

Ligprepのインタラクティブ実行例:

$ module load schrodinger/Feb-17

SMILES形式の入力ファイルを使用し,MAE形式で出力する場合

$ ligprep -ismi<入力ファイル> -omae<出力ファイル>

 

GUIで利用する場合は、Maestroを起動します。

$ module load schrodinger/Feb-17

$ maestro

 

 

メニューバーのFile > Exit をクリックすると終了します。

 

Schrodingerのライセンス利用状況を以下のコマンドで確認できます。

$ lmutil lmstat -S SCHROD -c 27010@lice0:27010@remote:27010@t3ldap1

 


 

5.21.        MATLAB

MATLABは行列計算などの数値計算やデータの可視化をすることのできるアプリケーションです。

MATLABの利用方法の例を以下に示します。

 

$ module load matlab/R2017a

$ matlab

 

 

インタラクティブでの使用手順について

$ module load matlab/R2017a

$ matlab -nodisplay

終了するにはexitを入力します。

 

MATLABのライセンス利用状況を以下のコマンドで確認できます。

$ lmutil lmstat -S MLM -c 27014@lice0:27014@remote:27014@t3ldap1

 

5.22.        Allinea Forge

Allinea Forgeの利用方法を以下に示します。

$ module load allinea/7.0.5

$ forge

 

 

メニューバーの File > Exit をクリックすると終了します。

 

6. フリーウェア

フリーウェアの一覧表を以下に示します。

 

61 フリーウェア一覧

ソフトウェア名

概要

GAMESS

ソルバ・シミュレータ

Tinker

ソルバ・シミュレータ

GROMACS

ソルバ・シミュレータ

LAMMPS

ソルバ・シミュレータ

NAMMD

ソルバ・シミュレータ

CP2K

ソルバ・シミュレータ

OpenFOAM

ソルバ・シミュレータ、可視化

CuDNN

GPUライブラリ

NCCL

GPUライブラリ

Caffe

DeepLearningフレームワーク

Chainer

DeepLearningフレームワーク

TensorFlow

DeepLearningフレームワーク

R

インタプリタ(Rmpi,rpudに対応)

Apache Hadoop

分散データ処理ツール

POV-Ray

可視化

ParaView

可視化

VisIt

可視化

Gimp

ツール(可視化)

Gnuplot

可視化

Tgif

描画ツール

ImageMagick

画像処理ツール

TeX Live

TeX ディストリビューション

java SDK

開発環境

PETSc

リニアシステムソルバ、ライブラリ

Fftw

高速フーリエ変換ライブラリ

 


 

6.1. 量子化学/MD関連ソフトウェア

6.1.1.GAMESS

GAMESSはオープンソースの第一原理分子量子化学計算アプリケーションです。

バッチキューシステムを利用したGAMESSの利用方法の例を以下に示します。

 

#!/bin/bash

#$ -cwd

#$ -l f_node=1

#$ -l h_rt=0:10:0

#$ -N gamess

. /etc/profile.d/modules.sh

 

module load intel intel-mpi gamess

cat $PE_HOSTFILE | awk '{print $1}' > $TMPDIR/machines

cd $GAMESS_DIR

./rungms exam08 mpi 4 4

詳細な説明は以下に記載されています。

http://www.msg.ameslab.gov/gamess/index.html 

 

6.1.2.Tinker

Tinkerはバイオポリマーの為の特別な機能を備えた、分子動力学の為のモデリングソフトウェアです。

バッチキューシステムを利用したTinkerの利用方法の例を以下に示します。

 

#!/bin/bash

#$ -cwd

#$ -l f_node=1

#$ -l h_rt=0:10:0

#$ -N tinker

. /etc/profile.d/modules.sh

 

module load intel tinker

cp -rp $TINKER_DIR/example $TMPDIR

cd $TMPDIR/example

dynamic waterbox.xyz -k waterbox.key 100 1 1 2 300

cp -rp $TMPDIR/example $HOME

詳細な説明は以下に記載されています。

https://dasher.wustl.edu/tinker/

 

6.1.3.GROMACS

GROMACSは分子動力学しミュレーションとエネルギー最小化を行う為のエンジンです。

バッチキューシステムを利用したGROMACSの利用方法の例を以下に示します。

 

#!/bin/bash

#$ -cwd

#$ -l f_node=1

#$ -l h_rt=0:10:0

#$ -N gromacs

. /etc/profile.d/modules.sh

 

module load cuda intel-mpi gromacs

cp -rp water_GMX50_bare.tar.gz $TMPDIR

cd $TMPDIR

tar xf water_GMX50_bare.tar.gz

cd water-cut1.0_GMX50_bare/3072

gmx_mpi grompp -f pme.mdp

OMP_NUM_THREADS=2 mpirun -np 4 gmx_mpi mdrun

cp -pr $TMPDIR/water-cut1.0_GMX50_bare $HOME

 

詳細な説明は以下に記載されています。

http://www.gromacs.org/


 

 

6.1.4.LAMMPS

LAMMPSは液状、固体状、気体状の粒子の集団をモデル化する古典分子動力学コードです。

バッチキューシステムを利用したLAMMPSの利用方法の例を以下に記します。

 

#!/bin/bash

#$ -cwd

#$ -l f_node=1

#$ -l h_rt=0:10:0

#$ -N lammps

. /etc/profile.d/modules.sh

 

module load intel cuda openmpi lammps

cp -rp $LAMMPS_DIR/bench $TMPDIR

cd $TMPDIR/bench

mpirun -np 4 lmp_gpu -sf gpu -in in.lj -pk gpu 4

cp -rp $TMPDIR/bench $HOME

 

詳細な説明は以下に記載されています。

http://lammps.sandia.gov/doc/Section_intro.html

 

6.1.5.NAMD

NAMDは、大規模な生体分子システムの高性能シミュレーション用にデザインされたオブジェクト指向の並列分子動力学コードです。

バッチキューシステムを利用したNAMDの利用方法の例を以下に記します。

 

#!/bin/bash

#$ -cwd

#$ -l f_node=1

#$ -l h_rt=0:10:0

#$ -N namd

. /etc/profile.d/modules.sh

 

module load cuda intel namd

cp -rp $NAMD_DIR/examples/stmv.tar.gz $TMPDIR

cd $TMPDIR

tar xf stmv.tar.gz

cd stmv

namd2 +idlepoll +p4 +devices 0,1 stmv.namd

cp -rp $TMPDIR/stmv $HOME

 

詳細な説明は以下に記載されています。

http://www.ks.uiuc.edu/Research/namd/2.12/ug/

 

6.1.6.CP2K

CP2Kは固体、液体、分子、周期的、物質、結晶、生物系の原子シミュレーションを実行できる量子化学、固体物理ソフトウェアパッケージです。

バッチキューシステムを利用したCP2Kの利用方法の例を以下に記します。

 

#$ -cwd

#$ -l f_node=1

#$ -l h_rt=0:10:0

#$ -N cp2k

. /etc/profile.d/modules.sh

 

module load intel intel-mpi cp2k

cp -rp $CP2K_DIR/tests/QS/benchmark $TMPDIR

cd $TMPDIR/benchmark

mpirun -np 8 cp2k.popt -i H2O-32.inp -o H2O-32.out

cp -rp $TMPDIR/benchmark $HOME

 

詳細な説明は、以下に記載されています。

https://www.cp2k.org/

 


 

6.2. CFD関連ソフトウェア

6.2.1.OpenFOAM

OpenFOAMはオープンソースの流体/連続体シミュレーションコードです。

バッチキューシステムを利用したOpenFOAMの利用方法の例を以下に記します。

 

#!/bin/bash

#$ -cwd

#$ -l f_node=1

#$ -l h_rt=0:10:0

#$ -N openform

. /etc/profile.d/modules.sh

 

module load cuda openmpi openfoam

mkdir -p $TMPDIR/$FOAM_RUN

cd $TMPDIR/$FOAM_RUN

cp -rp $FOAM_TUTORIALS .

cd tutorials/incompressible/icoFoam/cavity/cavity

blockMesh

icoFOAM

paraFOAM

 

詳細な説明は以下に記載されています。

http://www.openfoam.com/documentation/


 

6.3. 機械学習、ビックデータ解析関連ソフトウェア

6.3.1.CuDNN

CuDNNGPUを用いたDeep Neural Networkの為のライブラリです。

5.16.07.03バージョンインストールされています。

CuDNNの利用方法を以下に記します。

 

$ module load cuda cudnn

 

6.3.2.NCCL

NCCLは複数GPUの為の集団通信ライブラリです。

NCCLの利用方法の例を以下に記します。

 

$ module load cuda nccl

 

6.3.3.Caffe

CaffeはオープンソースのDeepLearningフレームワークです。

Caffeの利用方法の例を以下に記します。

 

$ module load python-extension

$ mkdir test

$ cp -rp $CAFFE_DIR/examples $CAFFE_DIR/data test

$ cd test

$ ./data/mnist/get_mnist.sh

$ vi examples/mnist/create_mnist.sh      <-- BUILD=$CAFFE_DIR/binと書き換えます

$ ./examples/mnist/create_mnist.sh

$ vi examples/mnist/train_lenet.sh        <-- ./build/tools/caffecaffeと書き換えます

$ ./examples/mnist/train_lenet.sh

 

詳細な説明は以下に記載されています。

http://caffe.berkeleyvision.org/

 

MKLを利用する際はコードの前段に「#define USE_MKL」を追記し、下記コマンドでインテル環境を呼び出し、$ MKLROOT以下にある計算ライブラリを呼び出してください。

$module load intel

 

 

 

6.3.4.Chainer

Chainerはフレキシブルなニューラルネットワークのフレームワークです。

Chainerの利用方法の例を以下に記します。

 

$ module load python-extension

$ cp -rp $PYTHON_EXTENSION_DIR/examples/chainer/examples .

$ cd examples/mnist

$ ./train_mnist_model_parallel.py

 

詳細な説明は以下に記載されています。

https://docs.chainer.org/en/stable/

 

6.3.5.TensorFlow

TensorFlowはデータフローグラフを用いた機械学習・AIのオープンソースのライブラリです。

TensorFlowの利用方法の例を以下に記します。

#python2.7の場合

$ module load python-extension

$ cp -rp $PYTHON_EXTENSION_DIR/examples/tensorflow/examples .

$ cd examples/tutorials/mnist

$ python mnist_deep.py

 

#python3.4の場合

$ module load python-extension/3.4

$ cp -rp $PYTHON_EXTENSION_DIR/examples/tensorflow/examples .

$ cd examples/tutorials/mnist

$ python mnist_deep.py

詳細な説明は以下に記載されています。

https://www.tensorflow.org/

 

6.3.6.R

Rはデータ解析とグラフィックスの為のインタプリタ型プログラミング言語です。

並列処理用にRmpiGPU用にrpudがインストールされています。

Rの利用方法の例を以下に記します。

 

$ module load intel cuda openmpi r

$ mpirun -stdin all -np 2 R --slave --vanilla < test.R

 

6.3.7.Apache Hadoop

Apache Hadoopソフトウェアライブラリは単純なプログラミングモデルを用いて大きなデータセットを分散処理する為のフレームワークです。

Apache Hadoopの利用方法の例を以下に記します。

 

$ module load jdk hadoop

$ mkdir input

$ cp -p $HADOOP_HOME/etc/hadoop/*.xml input

$ hadoop jar $HADOOP_HOME/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.8.0.jar grep input output 'dfs[a-z.]+'

$  cat output/part-r-00000

1       dfsadmin

 

バッチキューシステムの場合の利用手順を以下に示します。

#!/bin/bash

#$ -cwd

#$ -l f_node=1

#$ -l h_rt=0:10:0

#$ -N hadoop

. /etc/profile.d/modules.sh

 

module load jdk hadoop

cd $TMPDIR

mkdir input

cp -p $HADOOP_HOME/etc/hadoop/*.xml input

hadoop jar $HADOOP_HOME/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.8.0.jar grep input output 'dfs[a-z.]+'

cp -rp output $HOME

 


 

 

6.4. 可視化関連ソフトウェア

6.4.1.POV-Ray

POV-Rayはフリーの光線追跡ソフトです。

POV-Rayの利用方法の例を以下に記します。

 

$ module load pov-ray

$ povray -benchmark

 

詳細な説明は以下に記載されています。

http://www.povray.org/

 

6.4.2.ParaView

ParaViewはオープンソース、マルチプラットフォームのデータ解析と可視化アプリケーションです。

ParaViewの利用方法の例をを以下に記します。

 

$ module load cuda openmpi paraview

$ paraview

 

詳細な説明は以下に記載されています。

https://www.paraview.org/

 

6.4.3.VisIt

VisItはオープンソースの可視化アプリケーションです。

VisItの利用方法の例を以下に記します。

 

$ module load cuda openmpi vtk visit

$ visit

 

詳細な説明は以下に記載されています。

https://wci.llnl.gov/simulation/computer-codes/visit/

 


 

6.5. その他フリーウェア

6.5.1.gimp

gimpはオープンソースの画像操作プログラムです。

gimpの利用方法の例を以下に記します。

 

$ module load gimp

$ gimp

 

6.5.2.gnuplot

gnuplotはコマンドラインのインタラクティブなグラフ描画プログラムです。

標準機能に加え、X11latexPDFlib-liteQt4に対応するようにビルドされています。

gnuplotの利用方法の例を以下に記します。

 

$ module load gnuplot

$ gnuplot

 

6.5.3.tgif

tgifはオープンソースの描画ツールです。

tgifの利用方法を以下に記します。

 

$ module load tgif

$ tgif

 

Cannot open the Default(Msg) Font '-*-courier-medium-r-normal-*-14-*-*-*-*-*-iso8859-1'.というエラーが出て起動しない場合は、~/.Xdefaultsに以下の行を追加して下さい。

 

Tgif.DefFixedWidthFont:            -*-fixed-medium-r-semicondensed--13-*-*-*-*-*-*-*

Tgif.DefFixedWidthRulerFont:        -*-fixed-medium-r-semicondensed--13-*-*-*-*-*-*-*

Tgif.MenuFont:                    -*-fixed-medium-r-semicondensed--13-*-*-*-*-*-*-*

Tgif.BoldMsgFont:                 -*-fixed-medium-r-semicondensed--13-*-*-*-*-*-*-*

Tgif.MsgFont:                     -*-fixed-medium-r-semicondensed--13-*-*-*-*-*-*-*

 

6.5.4.ImageMagick

ImageMagickは画像処理ツールです。

標準機能に加え、X11HDRIlibwmfjpegに対応するようにビルドされています。

ImageMagickの利用方法の例を以下に記します。

 

$ module load imagemagick

$ convert -size 48x1024 -colorspace RGB 'gradient:#000000-#ffffff' -rotate 90 -gamma 0.5 -gamma 2.0 result.jpg

 

6.5.5.pLaTeX2e

pLaTeX2eは日本語化されたLaTex2eの一つです。

pLaTeX2eの利用方法の例を以下に記します。

$ module load texlive

$ platex test.tex

$ dvipdfmx test.dvi

 

pdfの作成にはdvipdfmxをご利用ください。dvipdfでは日本語が正常に変換されません。

 

6.5.6.Java SDK

Java SDKとして、Oracle JDK 1.8がインストールされています。

Java SDKの利用方法の例を以下に記します。

 

$ module load jdk

$ javac Test.java

$ java Test

 

6.5.7.PETSc

PETScはオープンソースの並列数値計算ライブラリです。線型方程式の求解等を行うことができます。

実数用、複素数用の2種類がインストールされています。

PETScの利用方法の例を以下に記します。

 

$ module load intel intel-mpi

$ module load petsc/3.7.6/real         <-- 実数用

又は

$ module load petsc/3.7.6/complex      <-- 複素数用

$ mpiifort test.F -lpetsc

 

6.5.8.fftw

fftwはオープンソースの高速フーリエ変換用ライブラリです。

fftw 2x系列と3x系列は非互換な為、バージョン2.1.53.3.62種類がインストールされております。

fftwの利用方法の例を以下に記します。

$ module load intel intel-mpi fftw        <-- Intel MPIの場合

又は

$ module load intel cuda openmpi fftw     <-- Open MPIの場合

$ ifort test.f90 -lfftw3

 


 

改定履歴

改定番号

改定日付け

内容

V1

7/31/2017

 初版

V2

8/17/2017

 改定第2

V3

9/6/2017

改定第3

V4

9/11/2017

2.2ログイン方法」にログインノードの制限を加筆

2.4ストレージサービス(CIFS)」にCIFSボリューム表示を加筆

4.4.4共有スクラッチ領域」のアクセス方法の追記

V5

9/14/2017

2.4ストレージサービス(CIFS)」にCIFSボリューム表示を加筆

V6

9/25/2017

4.3.1.インタラクティブノードを利用したX転送」を追記

V7

10/5/2017

6.3.3.Caffe」にMKLの利用方法について追記

V8

10/26/2017

5.12.4 ユーザー認証について」を削除