106
2.06 版(2014/01/31高性能計算サーバシステム 利用の手引き (公財)計算科学振興財団 運用課

高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

2.06版(2014/01/31)

高性能計算サーバシステム

利用の手引き

(公財)計算科学振興財団 運用課

Page 2: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート
Page 3: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

目次

1. システム構成 ...................................................... 1

1.1. システム構成概念図 ............................................... 1

1.1.1. 高性能計算サーバシステムの概念図 ................................ 1

1.1.2. 高性能計算サーバシステムの各構成要素の特徴と概要 .................... 2

1.2. ハードウェア構成 ................................................. 4

1.2.1. サーバシステム ............................................... 4

1.2.2. ワークステーションシステム、講習用端末システム ....................... 5

1.3. ソフトウェア構成 .................................................. 6

1.3.1. オペレーティングシステム(OS) .................................... 6

1.3.2. ソフトウェア .................................................. 7

1.3.3. アプリケーションプログラムのご利用方法 ............................. 9

1.4. ディレクトリ構成 ..................................................10

1.4.1. ストレージシステムのディレクトリ構成 ................................10

2. システム利用方法 ...................................................11

2.1. システムへのログイン方法 ...........................................11

2.1.1. 高度計算科学研究支援センター内でのシステムへのログイン方法 .............11

2.1.2. インターネットからの SSL-VPN接続によるシステムへのログイン方法 ..........16

2.1.3. インターネットからの SSH接続によるシステムへのログイン方法 ..............17

2.1.4. インターネットからの SSH多段接続によるシステムへのログイン方法 ..........27

2.1.5. WinSCPを使ったファイル転送方法(お手元の計算機とフロントエンドサーバ間) ...30

2.1.6. Cシステムの利用方法 ..........................................33

2.1.7. パスワードの変更概要 ..........................................33

2.1.8. パスワードの変更(センター内) ....................................33

2.1.9. パスワードの変更(センター外、SSL-VPN接続) .........................33

2.2. 課金確認コマンド .................................................34

2.2.1. プロジェクト単位従量課金確認コマンド thismonth ......................34

2.2.2. 利用者単位従量課金確認コマンド uacct .............................34

2.3. コンパイラ環境変更 ................................................36

2.4. 利用者環境 .....................................................37

2.5. 改行コード ......................................................38

2.5.1. 改行コード...................................................38

2.5.2. エディタ ....................................................38

2.5.3. 改行コードの変換 ..............................................39

2.5.4. マニュアル ..................................................40

2.6. 利用上のご質問お問い合わせシステム ProjectWEB利用法 ...................42

2.6.1. パスワードの変更 .............................................42

2.6.2. QA管理の新規登録 ............................................45

2.6.3. QA管理の追加登録および削除 ....................................49

2.7. 予約システム ....................................................53

2.8. スパコンネットワーク内Webページ .....................................53

3. A システム(フロントエンドサーバシステム・演算サーバシステム)、B システム(データ処理サー

バシステム)、Cシステム(クラウドシステム)の利用方法 .........................54

Page 4: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

3.1. Intelコンパイラ .................................................54

3.1.1. コンパイルコマンド .............................................54

3.1.2. 環境変数設定 ................................................55

3.1.3. コンパイルオプション ...........................................55

3.1.4. コンパイル方法 ...............................................56

3.1.5. コンパイル方法(注意事項) .......................................58

3.1.6. 使用例 .....................................................58

3.1.7. MPI(Intelコンパイラ) .........................................59

3.1.8. MKL(Math Kernel Library) ...................................60

3.1.9. エンディアン .................................................67

3.1.10. Intel Compiler V11の利用法 .................................68

3.1.11. Intel Compiler V12.1 の利用法 ...............................68

3.1.12. インテル® Composer XE 2013 の利用法 ...........................69

3.2. PGIコンパイラ ...................................................70

3.2.1. コンパイルコマンド .............................................70

3.2.2. 環境変数設定 ................................................70

3.2.3. コンパイルオプション ...........................................71

3.2.4. コンパイル方法 ...............................................71

3.2.5. 使用例 .....................................................71

3.2.6. MPI(PGIコンパイラ) ...........................................72

3.2.7. PGIコンパイラ 10.9 の利用法 ...................................73

3.2.8. PGIコンパイラ 11.1 の利用法 ...................................73

3.3. GCC(GNU Compiler Collection) ..................................74

3.3.1. コンパイルコマンド .............................................74

3.4. プログラム実行 ...................................................75

3.4.1. キュー .....................................................75

3.4.2. ジョブ実行方法 ...............................................76

3.4.3. ジョブの実行状況の確認 .........................................84

3.4.4. ジョブの削除 .................................................86

3.4.5. バッチリクエストの実行途中結果 ...................................86

3.4.6. ジョブの実行結果 ..............................................86

4. SPARC64サーバ ...................................................87

4.1. 富士通コンパイラ .................................................87

4.1.1. コンパイルコマンド .............................................87

4.1.2. 環境変数設定 ................................................87

4.1.3. コンパイルオプション ...........................................88

4.1.4. コンパイル方法 ...............................................88

4.1.5. 使用例 .....................................................89

4.1.6. MPI .......................................................89

4.1.7. エンディアン .................................................90

4.2. プログラム実行 ...................................................91

4.2.1. キュー .....................................................91

4.2.2. ジョブ実行方法 ...............................................94

4.2.3. ジョブの実行状況の確認 .........................................99

4.2.4. ジョブの実行結果 ............................................. 101

Page 5: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

Page 6: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

1

1. システム構成

1.1. システム構成概念図

1.1.1. 高性能計算サーバシステムの概念図

Bシステム データ処理サーバシステム PRIMERGY RX600S5 ×2ノード

Xeon X7520 1.86GHz ×4/ノード

主記憶 512GB/ノード OS: CentOS5.5(64bit版)

Aシステム 演算サーバシステム PRIMERGY BX922S2 ×208ノード

Xeon L5640 2.26GHz ×2/ノード

主記憶 48GB/ノード OS: CentOS5.5(64bit版)

ストレージシステム ETERNUS DX80×1

DISK容量:1PB (RAID5)

(バックアップを含む)

フロントエンドサーバシステム PRIMERGY RX300S6×15ノード Xeon L5640 2.66GHz×2/ノード

主記憶48GB/ノード OS: RHEL5.5(64bit版)

ログインサーバシステム PRIMERGY RX300S6×2

SPARC64サーバシステム SPARC Enterprise M3000 ×2ノード

SPARC64Ⅶ 2.75GHz ×1/ノード

主記憶 8GB/ノード

OS: Solaris10

Infini- Band QDR

FC接続

ウェブサーバシステム PRIMERGY RX100S6×2

FOCUSスパコンネットワーク

管理系システム

利用者端末

1Gbps 100Mbps

ファイアウォール

Cシステム 演算サーバシステム PRIMERGY CX122S1 × 38ノード

Xeon L5640 2.26GHz ×2/ノード

主記憶 48GB/ノード OS: CentOS5.5(64bit版)

Page 7: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

2

1.1.2. 高性能計算サーバシステムの各構成要素の特徴と概要

高性能計算サーバシステムの各構成要素の特徴と概要は以下の通りです。

・ファイアーウォール

インターネットからの不正アクセスを防ぎます。各種ポートを塞いだり一方通行にしたり等のアクセス制

御を行う他、自動侵入検知・防止装置を備えます。

・ウェブサーバシステム

高性能計算サーバシステムの利用に関する情報を提供します。運用情報や予約状況等を表示します。

・ログインサーバシステム

インターネットからの SSH プロトコルを使用したログイン接続、ファイル転送の中継を行います。この計

算機に一旦ログインしてから再度、フロントエンドサーバシステムに SSH でログイン、ファイル転送を行

います。ディレクトリ構成は以下のようになります。

ディレクトリパス 利用目的

/home1/グループ名/ユーザ名 ホームディレクトリ、容量は 1ユーザあたり 1GB

/data/グループ名 1GB以上必要な場合に使用(毎月1日0時に削除)

/share/グループ名/ユーザ名 2つのログインサーバからの共通ディレクトリ

ログインサーバはフロントエンドサーバ上のデータをお手元のマシンに中継する際の一時的な場所です

のでファイルを転送した後は可能な限り直ちにデータを消去してください。

・フロントエンドサーバシステム

高性能計算サーバシステムを利用するための拠点となります。プロジェクト毎の専用のファイルシステ

ムがマウントされ、利用者がログインし、プログラムの開発、ジョブ管理システムの利用、小規模な解析・

デバッグ、小規模なプリポスト処理等を行います。

・Aシステム

高性能計算サーバシステムの中核たるシステムです。ノード内12コアを利用した共有メモリ並列から、

Infiniband-QDR(40Gbit/s)で接続されたノード間分散メモリ並列、それらを組み合わせたハイブ

リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

アップ、ステップアップに利用頂けます。

・Bシステム

大容量共有メモリ(512GB)を備えAシステムや「京」で計算するための入力データを作成したり、計算し

た結果をディスク上から大規模共有メモリに読込んで高速にポスト処理を行ったりするためのシステム

です。ノード内に16コアを備えております。

・Cシステム

通信ネットワークを除いて性能はAシステムと同等です。ノード間は GbEther で接続されています。

2012年6月より 16ノードは Infiniband-QDR接続され、Aシステムと一体運用されています。

・SPARC64サーバシステム

京速コンピュータ「京」と同系統のCPUアーキテクチャ、SPARC64 VII(4コア/CPU)を 1 ノード1基搭

載したシステムです。Aシステムから「京」に移行する際の単体 CPU チューニングや 2 ノードを使ったノ

ード間並列に利用します。

Page 8: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

3

・ストレージシステム

プロジェクト毎に専用のファイルシステムを提供するため、大容量(1PB)を確保しています。

Page 9: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

4

1.2. ハードウェア構成

以下のシステムを中心に構成されます。

1.2.1. サーバシステム

A システム: フロントエンドサーバ(富士通製 RX300S6)15 ノードと演算サーバ(富士通製

BX922S2)208ノードを高速インターコネクトで接続した構成。

CPU メモリ 備考

専用フロントエンド

サーバ

Intel Xeon

L5640(2.26GHz)×2CPU(計

12コア)/ノード

48GB/ノード

演算サーバ

Intel Xeon

L5640(2.26GHz)×2CPU(計

12コア)/ノード

48GB/ノード ターボブー

ストは有効

Bシステム: データ処理サーバ(富士通製 RX600S5)2ノードによる構成。共用フロントエンドサー

バー

CPU メモリ 備考

共用フロントエンド

サーバ

Intel Xeon

X7520(1.86GHz)

×4CPU(計16コア)/ノード

512GB/ノー

*1 参照

データ処理サーバ *2 参照

*1各ノードの8コア、メモリ256GBをフロントエンドとして運用

*2各ノードの8コア、メモリ256GBをデータ処理サーバとして運用

Cシステム: 演算サーバ(富士通製CX122 S1)38ノードを GbEtherで接続し、うち 16ノードは

高速インターコネクトで Aシステムと接続した構成。

CPU メモリ 備考

演算サーバ

Intel Xeon

L5640(2.26GHz)×2CPU(計

12コア)/ノード

48GB/ノード

SPARC64サーバ: 富士通製SPARC Enterprise M3000 2ノードによる構成。

CPU メモリ 備考

SPARC64サーバ SPARC64Ⅶ(2.75GHz)×1CPU

(4コア)/ノード 8GB/ノード

ログインサーバ: 富士通製RX300S6 2ノードによる構成。

ウェブサーバ: 富士通製RX100S6 2ノードによる構成。

Page 10: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

5

1.2.2. ワークステーションシステム、講習用端末システム

ワークステーション: DELL製Precision T5500で、DVDスーパーマルチドライブを搭載。

ディスプレイは 24”ワイド TFT(1920×1200)×2/台を接続。

CPU メモリ 備考

ワークステーション

Intel Xeon

E5630(2.53GHz)×2CPU(計

8コア)/台

48GB/台 端末利用室

に設置

講習用端末: 富士通製ESPRIMO K551/Bで、DVD-ROMドライブを搭載。

ディスプレイは本体一体型で19”ワイドTFT(1440×900)を搭載。

CPU メモリ 備考

講習用端末

Intel Core i3-380M

(2.53GHz)×1CPU(2コ

ア)/台

2GB/台

センター内

実習室に設

Page 11: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

6

1.3. ソフトウェア構成

各計算機に導入するソフトウェアの構成を示します。

1.3.1. オペレーティングシステム(OS)

各システムで採用するオペレーティングシステム(OS)を示します。

表 1.3.1-1オペレーティングシステム(OS)

システム名 オペレーティングシステム(OS)

ログインサーバシステム Red Hat Enterprise Linux 5.5(64bit版)

フロントエンドサーバシステム Red Hat Enterprise Linux 5.5(64bit版)

演算サーバシステム CentOS 5.5(64bit版)

データ処理サーバシステム CentOS 5.5(64bit版)

SPARC64サーバシステム Solaris 10

ワークステーションシステム Windows 7 Professional(64bit版)

講習用端末システム Windows 7 Professional

Page 12: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

7

1.3.2. ソフトウェア

各システムで利用可能な主なソフトウェアの一覧を示します。

表 1.3.2-1ソフトウェア一覧(サーバシステム)

フロントエンドサーバシステム

演算サーバシステム

データ処理サーバシステム

SPARC64

サーバシステム

ジョブスケジューリング

Platform LSF ○ ○ ○ -

Parallelnavi BP - - - ○

開発環境(コンパイラ)

インテル® Cluster Studio 2011 ○ ○ ○ -

インテル®コンパイラ 12.0

クラスター・ツールキット・コンパイラ・エディション ○ ○ ○

PGI CDK ○ ○ ○ -

GNU ○ ○ ○ -

Parallelnavi LP - - - ○

ソフトウェア

Java SDK ○ ○ ○ -

Emacs ○ - - -

vim ○ ○ ○ -

OpenMPI ○ ○ ○ -

MPICH2 ○ ○ ○ -

fhpf ○ ○ ○ -

OpenMX ○ ○ ○ -

GAMESS ○ ○ ○ -

ABINIT-MP ○ ○ ○ -

NAMD ○ ○ ○ -

GROMACS ○ ○ ○ -

OpenFOAM(*) ○ ○ ○ -

ParaView ○ ○ ○ -

gnuplot ○ ○ ○ -

Octave ○ ○ ○ -

Pov-Ray ○ ○ ○ -

R ○ ○ ○ -

GLview ○ - ○ -

AutoDock Vina ○ ○ ○ -

(*) GCC でビルドした OpenFOAM を実行する場合は、環境変数を別途設定する必要があります。「2.3.コンパイラ環境変更」を参考に.bashrc_gcc を読み込み、設定を行ってください。

Page 13: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

8

表 1.3.2-2ソフトウェア一覧(ワークステーションシステム、講習用端末)

ワークステーションシステム

講習用端末

ソフトウェア

LZH/ZIP形式の圧縮・展開 Lhaplus ○ ○

telnet/SSHクライアント PuTTY ○ ○

SSH2プロトコルと UTF-8表示に対応した

ターミナルエミュレータ TeraTerm ○ ○

SCP/SFTPクライアント WinSCP ○ ○

UNIXライクな環境のひとつである

Cygwin ○ ○

X Window Systemの実装のひとつであ

る Cygwin/X ○ ○

テキストエディタ TeraPad ○ ○

Perlのディストリビューションである

ActivePerl ○ -

Python ○ -

OpenOffice ○ -

ParaView ○ -

Office Personal 2007 With

PowerPoint 2007 - ○

AcrobatReader - ○

Page 14: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

9

1.3.3. アプリケーションプログラムのご利用方法

/home1/share/にインストールしたアプリケーション、数値計算ライブラリ等はご自由に利用ください。

FOCUSスパコンで動作検証済みの商用・有償アプリケーションは Gaussian 09以外はソフトウェアベ

ンダーからライセンスを取得して頂きましてご利用いただきます。その他、各ユーザがホームディレクト

リ下に、独自にインストールしたものが利用可能です。

1.3.3.1. ライセンスが必要なアプリケーション(商用・有償)

・コンパイラ

コンパイラ(Intelコンパイラ,PGIコンパイラ)については無償で使用していただくことができます。

(ただしまれに同時にご使用の方が多いタイミングで、導入しておりますライセンス数を越えてしまい、ご

使用のためのライセンスがありませんというエラーが出ることがございますが、そのような場合はしばら

く時間を置いてご利用下さい。)

・コンパイラ以外の商用・有償ソフトウエア

ANSYS FLUENT, Advance/FrontFlow/red, STRAM V9, SCRYU/Tetra V9,

RFLOW, ADVentureCluster , Advance/FrontSTR 等

に関しましてはFOCUSスパコンで利用するために新たにライセンスを取得する必要がございます。各ア

プリケーションの代理店等に関しましては、お問い合わせ下さい。サポート等は各ソフトウェアベンダー

等が担当いたします。(FOCUSスパコンに未導入の商用ソフトウエアをご利用されたい場合は各ソフトウ

ェアベンダー等に FOCUSスパコンで使いたいとご相談下さい。)

1.3.3.2. フリーソフトウェア

/home1/shareにインストールされているアプリケーション、

数値計算ライブラリ、画像処理ライブラリ等

OpenFOAM , GROMACS, ParaView , Octave , POV-Ray , NAMD,GMP , MPFR, Qt ,

FFTW ,

tiffライブラリ ,jpegライブラリ等

は利用者に自由に使っていただくことができます。しかしながら当該アプリケーションのご利用にあたっ

ては FOCUSによるサポートはございません。

ユーザあるいはプロジェクトとしてFOCUSスパコンに未導入のフリーソフトウェアを利用されたい場合は

各自のホームディレクトリやプロジェクト共用ディレクトリ下に自由にインストールして利用して頂いてか

まいません。基本的に FOCUSからのサポートはございません。

1.3.3.3. 利用サポート

FOCUSスパコンに導入された商用ソフトウェアのサポートは各ソフトウェアベンダーが行います。

現在、以下のサポートサービスが提供されております。

OpenFOAM利用サポートサービス:(株)CAEソリューションズ

http://www.j-focus.jp/Documents/OpenFOAMSupportGuide.html

Gaussian/GaussView/GAMESS/AMBER/CONFLEX利用サポートサービス:コンフレックス(株)

http://www.j-focus.jp/Documents/ConflexSupportGuide.html

Page 15: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

10

1.4. ディレクトリ構成

1.4.1. ストレージシステムのディレクトリ構成

共用フロントエンドサーバ、演算サーバで利用するストレージシステムのディレクトリ構成を示します。

表1.4.1-1 ディレクトリ構成一覧

ディレクトリパス 利用目的

/home1/グループ名/ユーザ名 ホームディレクトリ

/home1/グループ名 グループメンバーにて共用するディレクトリを作成することが

できます

/home1/share システムで共有するソフトウェア

/work/グループ名 スクラッチディレクトリ(共有ファイルシステム)

/tmp スクラッチディレクトリ(演算サーバのローカルディスク)

※ グループメンバーで共有したいソフトウェア等は /home1/グループ名 配下にディレクトリを作成し、

インストールを行ってください。

※ /work 配下のファイルやディレクトリはジョブ終了後速やかに消去してください。他の利用者も利用

する共通領域です。I/O性能は約100MB/sec です。

※ /tmp は演算サーバのローカルディスクになります。当該演算サーバにて新しいジョブが実行され

るとデータは/tmpは以下のデータは消去されます。容量は 400GBです。

※ 上記以外は、サーバの各OSに準じます。

Page 16: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

11

2. システム利用方法

高性能計算サーバシステムの利用方法について以下に示します。

2.1. システムへのログイン方法

2.1.1. 高度計算科学研究支援センター内でのシステムへのログイン方法

各サーバシステムのシステム名、ホスト名、接続プロトコルを示します。

計算科学支援センター内に設置されている実習室の講習用端末システムまたは端末利用室のワークス

テーションシステムから目的のサーバに接続します。

表 2.1.1-1ホスト名/接続プロトコル

ホスト名

接続プロトコル

SSH teln

et SCP FTP

共用フロントエンドサーバ

(データ処理サーバと並行運用)

l001.j-focus.jp

l002.j-focus.jp

◯ ☓ ◯ ☓ 専用フロントエンドサーバ

f005.j-focus.jp

f013.j-focus.jp

SPARC64サーバ sparc1.j-focus.jp

※Aシステム・Bシステム・Cシステムをご利用の際は共用フロントエンドサーバにログインしてください。

※SPARC64サーバのご利用には別途利用申請書を提出していただく必要があります。

SPARC64 サーバにログインするにはログインサーバまたはフロントエンドサーバを経由する必要が

あります。(SSL-VPN接続において お手元の計算機⇔SPARC64サーバへの直接ログインはできませ

ん)

※2012年10月25日よりf002,f003,f004は共用フロントエンドとしてご利用いただけなくなってお

ります。

Page 17: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

12

2.1.1.1. Tera Termなどで SSH接続する場合

講習用端末システムまたはワークステーションシステムで SSH クライアントソフトを起動します。※以

下は Tera Termを使用した場合の例です。

スタートメニュー > すべてのプログラム > Tera Termで Tera Termを起動する。

(1)ホスト名に、接続したいサーバ名(l001.j-focus.jp または l002.j-focus.jp)を入力し、

SSHを選択、SSHバージョンは SSH2を選択します。

Page 18: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

13

(2)ユーザ名に発行されたユーザ ID,パスフレーズにパスワードを入力します。

(3)プレインテキストを使う、を選択します。(ID を入力中に以下のようなセキュリティ警告ウインドウが

現れますが、続行ボタンを押して続けます。)OKボタンを押します。

(4)接続に成功すると、以下のようなコマンドプロンプトが表示されます。

Page 19: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

14

2.1.1.2. WinSCPによるファイル転送

スタートメニュー > すべてのプログラム > WinSCPでWinSCPを起動する。

(1)接続したいホスト名(l001.j-focus.jpまたは l002.j-focus.jp)、ポート番号に 22、ユー

ザ名にユーザ ID、パスワード、を入力します。

(2)ログインをクリックします。

(3)下の図のように、講習用端末と、FOCUSスパコンの間でファイル転送ができるようになります。

なお、講習用端末システム内のハードディスクの内容は起動時に初期化されるようになっ

ておりますので、ご注意ください。

Page 20: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

15

2.1.1.3. X Window Systemを利用するアプリケーションをご利用の場合の手順

(1)スタートメニュー > すべてのプログラム > Cygwin-X > XWin Serverを起動します。

(2)スタートメニュー > すべてのプログラム > Tera Termを起動します。

(3)Tera Termを起動すると『新しい接続の設定』ウインドウが出ますが、キャンセルボタンを押し『新

しい接続の設定』ウインドウを閉じます。

(4)Tera Termのメニューで 設定 (S) > SSH転送 を選択します。

(5)リモートの(x)アプリケーションをローカルの X サーバに表示する、にチェックを入れ OK を押しま

す。

(6) Tera Termのメニューで ファイル(F) > 新しい接続 で『新しい接続の設定』ウインドウを開き

ます。

(7) あとは通常の手順(2.1.1.1参照)で接続します。X Window Systemを利用するアプリケーショ

ンを講習用端末で利用出来るようになります。

Page 21: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

16

2.1.2. インターネットからの SSL-VPN接続によるシステムへのログイン方法

お手元の計算機がインターネットに対して SSL-VPN接続できる環境であれば、SSL-VPN接続により

センターにアクセスすることができます。

以下に接続方法について示します。

[事前準備]

① SSL-VPNの接続環境を準備する(別紙の『SSL-VPN利用者マニュアル』を参照)。

[接続方法]

① SSL-VPNで接続する(別紙の『SSL-VPN利用者マニュアル』を参照)。

※接続後のサーバとの接続方法については 2.1.1項のログイン方法を参照ください。

Page 22: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

17

2.1.3. インターネットからの SSH接続によるシステムへのログイン方法

お手元の計算機がインターネットに対して SSH接続できる環境であれば、SSH接続によりセンターに

アクセスすることができます(SSH接続するには事前にセンターに公開鍵を登録する必要があります)。

ログインサーバ ssh.j-focus.jpに接続し、そこから再度FOCUSスパコン内の共有フロントエンド

サーバfe.j-focus.jpに接続し(l001, l002のいずれかに接続されます)、ご利用いただきます。

以下に接続方法について示します。

2.1.3.1. 事前準備

① 公開鍵・秘密鍵を作成する。

② センターに①で作成した公開鍵を送付し登録を依頼する。

③ センターから登録完了の連絡を待つ。

④ 公開鍵・秘密鍵を変更する場合は①~③を再度行う。

公開鍵・秘密鍵の作成例: Tera Termを使った公開鍵・秘密鍵の作成方法

(1)Tera Termを起動すると『新しい接続』のウインドウが開くので、キャンセルボタンを押して閉じます。

(2)メニューバーの [設定(S)] をクリックします。

(3) サブメニューから[SSH鍵生成(N)…]をクリックします。

Page 23: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

18

(4)『TTSSH: 鍵生成』ウインドウが開くので、RSA2をチェックし、[生成]ボタンをクリックします。

(注)日本語Windows環境では上の図のように RSA2の表記の 2が隠れておりますが、鍵の種類

の中央のものが RSA2になっております。

(5)キーのパスフレーズとパスフレーズの確認に同じパスフレーズを入力(推奨)します。

(6) [公開鍵の保存(C)]と[秘密鍵の保存(P)]でそれぞれ公開鍵と秘密鍵を保存します。

(7) センターに公開鍵の登録を依頼します。

ProjectWEB(https://pjshr139.soln.jp/IJS06D5/pjwebroot/login.jsp)(2

.6章参照)経由で送付お願いします。

もしくは運用課 [email protected] 宛にメールを添付

公開鍵は、ユーザ個人単位でそれぞれ別のものが必要です。

公開鍵の送付の際は、あわせてユーザ IDも記載お願いします。

(8) 秘密鍵はSSH接続する際に使用します。

秘密鍵のファイルは厳重に管理お願いします。

(公開鍵登録の際に誤って送付されないようにお願いします。)

Page 24: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

19

2.1.3.2. ログインサーバへの接続方法

SSH クライアントにより前述で作成した秘密鍵を指定してセンターの以下の接続先によりログインサ

ーバに接続する。

接続先 サービス ポート番号 サービスバージョン 認証方式

ssh.j-

focus.jp

SSH 22 SSH2 公開鍵認証

SSHの接続例: Tera Termによる接続方法

以下に、Tera Termを使った公開鍵認証でのログイン方法を説明します。

ご使用の環境によってはプロキシを設定する必要があります。ネットワーク管理者にご確認ください。

(1) Tera Termを起動し、ホスト名に接続するログインサーバ名ssh.j-focus.jpを入力しま

す。

サービスは SSH、ポート番号は 22、サービスバージョンは SSH2を選択します。[OK]をクリック

します。

(2) SSH認証画面が表示されたら、ユーザ名にセンターから発行されたユーザ IDを入力し、パスフ

レーズには公開鍵・秘密鍵を作成した際に指定したパスフレーズを入力してください。

さらにRSA/DSA鍵を使うをチェックし、端末に保存している秘密鍵を指定します。[OK]を押すと接続さ

れます。

Page 25: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

20

(ユーザ ID を入力中に以下のようなセキュリティ警告ウインドウが現れますが、[続行]ボタンを押して

続けます。)

(4)ログインサーバ ssh.j-focus.jp に接続すると、[ユーザ ID@f016~]$ もしくは[ユーザ

ID@f017~]$というコマンドプロンプトが表示されます。

Page 26: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

21

2.1.3.3. サーバへの接続方法

sshコマンドにより共有フロントエンドサーバ fe.j-focus.jpに接続します(l001, l002のいず

れかに接続します)。

[接続例] ssh fe

Page 27: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

22

2.1.3.4. ファイル転送方法

ログインサーバ ssh.j-focus.jp を介して、共有フロントエンドサーバ(fe.j-focus.jp)に接続し

ている場合、それぞれ独立したファイルシステムがマウントされますので、

ファイル転送は

お手元の計算機⇔ログインサーバ(ssh.j-focus.jp)⇔共有フロントエンドサーバ(fe.j-

focus.jp)

と2段階の転送が必要になります。

①ファイル転送クライアント(WinSCPなど)によりログインサーバにファイルを転送します。

SCPの接続例: WinSCPによる接続方法

以下に、WinSCPを使った公開鍵認証でのログイン方法を説明します。

ご使用の環境によってはプロキシを設定する必要があります。ネットワーク管理者にご確認ください。

(1) WinSCPを起動し、セッションを選択します。

(2) ホスト名に接続するログインサーバ名ssh.j-focus.jp、ポート番号に 22、ユーザ名にユーザ

ID、を入力します。パスワードには何も入力する必要はありません。WinSCP用に変換した PuTTY形

式の秘密鍵を選択します(鍵の形式の変換方法は 2.1.3.5参照)。プロトコルは SFTPまたは SCP、

プロトコルが SFTPの場合には SCP代替システムにチェックを入れます。[ログイン]を押します。

(3)セキュリティ警告画面(初回アクセス時のみ表示されます)が表示されたら、内容を確認し[はい]を押

します。

Page 28: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

23

(4) 公開鍵・秘密鍵を作成した際に指定したパスフレーズを入力します。

(5) お手元の計算機とログインサーバ間でファイル転送が出来るようになります。

② ログインサーバと共有フロントエンドサーバ(fe.j-focus.jp)間のファイル転送は、scp コマ

ンドを使用してファイルを転送を行います。

[接続例] scp fe:コピー元パス名 コピー先パス名

ユーザ IDを指定する場合はサーバ名の前に ユーザ名@ を追加してください。

[接続例] scp ユーザ ID@目的のサーバ:コピー元パス名 コピー先パス名

(注)フロントエンドにログインした状態でログインサーバにファイルを転送する場合は、転送先のサー

バのアドレスを ssh.j-focus.jpではなく、f016.j-focus.jpまたは f017.j-focus.jpとす

る必要があります。

Page 29: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

24

2.1.3.5. 秘密鍵の変換: PuTTYgenを使った WinSCP用PuTTY形式への変換方法

スタート→プログラム→ WinSCP →鍵関連ツール→ PuTTYgenでPuTTYgenを起動する。

(1) Conversions → Import Keyを選択する。

(2) 2.1.3.1の手順で作成した秘密鍵を選択する。

(3) 鍵を作成する際に指定したパスフレーズを入力する。

Page 30: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

25

(4) Save private keyをクリックし、変換した鍵を保存する。

Page 31: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

26

2.1.3.6. X Window Systemを利用するアプリケーションをご利用の場合の手順(windows環境)

(1) お手元の計算機にCygwin/X 、Xming等のXサーバソフトウエアをあらかじめインストールして

おき、Xサーバを起動します。

(2) Tera Termを起動します。Tera Termを起動すると『新しい接続の設定』ウインドウが出ますが、

キャンセルボタンを押し『新しい接続の設定』ウインドウを閉じます。

(3) Tera Termのメニューで 設定 (S) > SSH転送 を選択。

(4) リモートの(X)アプリケーションをローカルの Xサーバに表示する、にチェックを入れ OKを押します。

(5) Tera Termのメニューで ファイル(F) > 新しい接続 で新しい接続の設定ウインドウを開きます。

(6) ログインサーバへは通常の手順(2.1.3.2参照)で接続します。

(7) ログインサーバから共用フロントエンドサーバ(fe.j-focus.jp)に ssh接続する際には、

-X ( Xえっくす

は大文字)オプションを付けて、

ssh –X fe とします。

(8) X Window Systemを利用するアプリケーションを接続にご利用の端末で利用出来るようになり

ます。

Page 32: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

27

2.1.4. インターネットからの SSH多段接続によるシステムへのログイン方法

2.1.3ではお手元のPC(localhost)からログインサーバに接続し、そこから再度FOCUSスパコ

ン内の目的のフロントエンドサーバに接続する方法を示しました。本節では、SSH 多段接続により

localhostから直接フロントエンドサーバにログインする方法について示します。

2.1.4.1. proxy設定による SSH多段接続の設定方法(Windows cygwin, MacOS, linux等)

localhostでの設定は $HOME/.ssh/config ファイルを以下のように設定します。ログインする

フロントエンドサーバは l001、ユーザ IDは user0001の場合の設定例になります。

【$HOME/.ssh/config 設定例】

Host FocusLogin #

HostName ssh.j-focus.jp # フロントエンドサーバの設定

User user0001 # ユーザID

Port 22 # ポート番号

IdentityFile ~/id_rsa # SSH秘密鍵の場所

Host l001Focus

HostName l001.j-focus.jp # ホストの指定

User user0001 #

ProxyCommand ssh FocusLogin nc %h %p #

configファイルでの設定終了後、フロントエンドへの接続を実行します。

【多段SSH接続実行例】

[localhost] $ ssh l001Focus

Enter passphrase for key '~/id_rsa': ssh鍵のパスワードを入力

user0001@l001's password: フロントエンドサーバのログインパスワードを入力

Last login: Wed Aug 29 14:05:10 2012 from f017.j-focus.jp

[user0001@l001 ~]$ hostname

l001.p

[user0001@l001 ~]$

scpコマンドを使って localhostから直接フロントエンドサーバへファイルのコピーを行うことも可能

です。

【多段SSH接続を使った scp実行例】

[localhost] $ scp testfile l001Focus:~ testfileをl001のホームにコピー

Enter passphrase for key '~/id_rsa': ssh鍵のパスワードを入力

user0001@l001's password: フロントエンドサーバのログインパスワードを入力

testfile 100% 217 0.2KB/s 00:00

[localhost] $

Page 33: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

28

2.1.4.2. tera term を使った SSH多段接続の設定方法

tera term を使った SSH多段接続ではマクロを設定します。

1) テキストエディターを使ってマクロを作成します。以下では「FOCUS_FE.ttl」という名前でファイル

を作成しています。(接尾語は".ttl"にしてください)

【マクロ 設定例】

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

username = 'user0001' ;ユーザ ID

hostname1= 'ssh.j-focus.jp'

keyfile = '"C:¥Documents and Settings¥xxxx¥id_rsa"' ;SSH秘密鍵の場所

hostname2= 'fe'

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

msg = hostname1

strconcat msg ':22 /ssh /auth=publickey /user='

strconcat msg username

strconcat msg ' /keyfile='

strconcat msg keyfile

strconcat msg ' /ask4passwd'

connect msg

remote_prompt = '$'

wait remote_prompt

msg = 'ssh '

strconcat msg username

strconcat msg '@'

strconcat msg hostname2

sendln msg

2) 接尾語「.ttl」をもつファイルが「FOCUS_FE.ttl」が実行エンジン「ttpmacro.exe」に関連して

いるようエクスプローラから設定する。

2.1) 該当ファイルを右クリックし「プロパティ」を表示する。

Page 34: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

29

2.2) 「ファイルの種類」-->「変更」---> 「このファイルの種類を開くプログラムを選択」--->

「ttpmacro.exe」を選択

3)「FOCUS_FE.ttl」をダブルクリックするとtera termが立ち上がります。パスワードを入力し、

「OK」をクリックします。

3) フロントエンドサーバにログインできました。(ssh user0001@fe コマンドは自動的に入力されま

す)

Page 35: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

30

2.1.5. WinSCPを使ったファイル転送方法(お手元の計算機とフロントエンドサーバ間)

インターネットから SSH接続を行う場合のファイル転送については、2.1.3.4 にて示したように 2

段階でファイル転送を実施しました。

お手元の計算機⇔ログインサーバ(ssh.j-focus.jp)⇔共有フロントエンドサーバ(fe.j-

focus.jp)

本節ではログインサーバを経ることなく直接とファイル転送を行う方法について説明します。

(1) WinSCPを起動し、「詳細設定」をチェックします。

(2) 「接続」--「トンネル」を選択します。

「SSHトンネルを経由して接続」にチェックを入れると「トンネルするホストの設定」が入力可能な状態にな

るので以下のように設定します。

・「ホスト名」 ssh.j-focus.jp

・「ポート番号」 22

・「ユーザ名」 ユーザ ID

・「秘密鍵」 WinSCP用に変換した PuTTY形式の秘密鍵を指定(鍵の形式の変換方法は 2.1.3.5参照)

Page 36: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

31

(2) 「セッション」を選択し、以下のように設定します。

・「ホスト名」 fe

・「ユーザ名」 ユーザ ID

(3) 「保存」ボタンより設定の保存を行います。以下では「FOCUS フロントエンド接続」として保存してい

ます。

(4) 「セキュリティ警告画面(初回アクセス時のみ表示されます)が表示されたら、内容を確認し[はい]を押

します。

Page 37: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

32

(5) ログインサーバに接続します。SSH鍵のパスワードを入力します。

(6) 続いてフロントエンドサーバに接続されます。フロントエンドサーバのパスワードを入力します。

(7) お手元の計算機とフロントエンドサーバ間でファイル転送が出来るようになります。

Page 38: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

33

2.1.6. Cシステムの利用方法

Cシステムをご使用の場合、

共用フロントエンドサーバ l001.j-focus.jp , l002.j-focus.jp もしくは、ご使用の専用フロ

ントエンドサーバから Cシステムにジョブ投入するためのキューを使用します。

共用フロントエンドサーバ l001.j-focus.jp , l002.j-focus.jpから Cシステムをご利用にな

られる場合のキュー名は c24t24hになっております。専用フロントエンドサーバからCシステムをご利

用の場合のキュー名につきましては、個別に別途通知いたします。

2.1.7. パスワードの変更概要

ログインサーバシステムは公開鍵・秘密鍵で認証を行いますので、公開鍵の形成方法は 2.1.3.1事

前準備を参照してください。

フロントエンドサーバシステム、データ処理サーバシステム、SPARC64 サーバシステムに直接ログイ

ンする際や講習用端末システム、ワークステーションシステム、SSL-VPNにログインする際はパスワー

ドが必要です。これらの ID、パスワードは共通で管理されています。変更方法を以下に示します。

センター外から SSH接続の場合は、SSHの Xフォワード機能を使用することでパスワード変更可能で

すが推奨しません。以下の 2.1.8項または 2.1.9項の方法で変更してください。

2.1.8. パスワードの変更(センター内)

パスワードの変更は Webブラウザで以下の URLに接続して行います。

接続先: https://ldapmgr.j-focus.net/

2.1.9. パスワードの変更(センター外、SSL-VPN接続)

SSL-VPN接続(2.1.2項を参照)後は、2.1.8項を参照願います。

Page 39: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

34

2.2. 課金確認コマンド

2.2.1. プロジェクト単位従量課金確認コマンド thismonth

基本サービスでの当月始めからの終了ジョブに対する従量課金額等の情報が得られます。

【実行例】

$ thismonth

Accounting information at S128 in this month.

proj njob avg_et avg_nodes avg_procs et_nodes charge et_max

et_np_max np_max

abc 274 3.0 9.9 95.0 1058.8 111174 24.2 4019.4

1200

<出力説明>

proj プロジェクトコード

njob ジョブ数

avg_et 平均経過時間(h)

avg_nodes 平均ノード数

avg_procs 平均プロセス数

et_nodes ノード時間(h)

charge 課金額(円)

et_max 最大経過時間(h)

et_np_max 最大プロセスノード時間(h)

np_max 最大プロセス数

<注意>

トライアルユース額に到達したかどうかの確認は先月までの請求書又は実績報告書に記載の残額と本コマン

ドで出力される課金額の合計が 10万円を超えたかどうかで確認してください。また、実行中のジョブは結果

に反映されません。コマンド実行時点で終了しているジョブのみが集計対象です。

2.2.2. 利用者単位従量課金確認コマンド uacct

基本サービスでの終了ジョブに対する従量課金額、Gaussian利用料等の情報が得られます。

uacctと引数無しだと当月の情報が、uacct YYYYMMで西暦と月を与えると当該年月の情報が得ら

れます。

【実行例1】

$ uacct

Charge information of uabc0001 in 201204 :

Computational: 5319.05 (Rack rate: 5599)

Items S128: 0 nodehours, 0 yen

C24 : 66 nodehours, 5319.05 yen

Gaussian 09 : 42 nodehours, 2677 yen

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

Total charge : 7996.05

Page 40: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

35

【実行例2】

$ uacct 201203

Charge information of uabc0001 in 201203 :

Computational: 25030.60 (Rack rate: 26292)

Items S128: 100 nodehours, 9975.00 yen

C24 : 188 nodehours, 15055.60 yen

Gaussian 09 : 140 nodehours, 8840 yen

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

Total charge : 33870.60

<出力説明>

Computational: 計算ノード課金額

Rack rate: 計算ノード割引前課金

Items 内訳

S128: Aシステム ノード時間、課金額

C24 : Cシステム ノード時間、課金額

Gaussian 09 : Gaussian 09利用課金額

Total charge 合計課金額

<注意>

トライアルユース額は反映されておりません。また、実行中のジョブは結果に反映されません。コマンド実行

時点で終了しているジョブのみが集計対象です。

Page 41: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

36

2.3. コンパイラ環境変更

デフォルトのコンパイラ環境は、GNU(gcc 4.1.2)です。

コンパイラ環境を変更するには Intelの環境をご利用になる場合は、環境変数を変更する必要があ

ります。3章の各コンパイラの一覧を参照の上で変更をお願いします。

フロントエンドサーバにアクセスすると各ユーザアカウントのホームディレクトリに

.bashrc_gcc

.bashrc_intel

.bashrc_pgi

という各コンパイラを使用するための環境変数の設定のサンプルがあり、それぞれ gcc 4.4.5、

IntelコンパイラVersion 12.0.0 、PGIコンパイラ version 11.1を利用するための環境設定

のサンプルになっています。

コマンドラインでの設定の方法は以下になります。

【例 gcc 4.4.5を利用するための環境設定】

$ . ~/.bashrc_gcc

【例 IntelコンパイラVersion 12.0.0を利用するための環境設定】

$ . ~/.bashrc_intel

【例 PGIコンパイラversion 11.1を利用するための環境設定】

$ . ~/.bashrc_pgi

Page 42: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

37

2.4. 利用者環境

初期登録時、各システムのシェルは bashを使用可能としています。

ご参考までに他のシェルを利用される場合に用意すべきファイルを以下に記載します。bash 以外の

シェルの環境設定ファイルは初期登録時には用意されていません。

表 2.4-1環境設定ファイル

環境設定ファイル名 利用ログインシェル

bash sh ksh csh /

tcsh

.bash_profile ○

.bashrc ○ ○

.profile ○ ○ ○

.cshrc ○

.login ○

ログインシェル環境を変更されたい場合は、ユーザIDをFOCUSスパコンQAシステムProjectWEB

https://pjshr139.soln.jp/IJS06D5/pjwebroot/login.jsp(2.6. ProjectWEB 利用

法参照)で書き込んで頂く、もしくは運用課 [email protected]宛にお問い合わせお願いします。

Page 43: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

38

2.5. 改行コード

UNIX/Linux系OS(RHEL5/CentOS)とWindows系OSでは、改行コードに違いがあります。

2.5.1. 改行コード

改行コードには、LF(Line Feed)、CR(Carriage Return)があり、UNIX/Linux 系では LF、

Windows系では CR+LFとなります。

表 2.5.1-1 OS改行コード

OS 改行コード

RHEL5 LF

CentOS5 LF

Windows系(Vista/XPなど) CR+LF

2.5.2. エディタ

(1) emacs(RHEL5)

emacsでは、CR+LF、LF両方のテキストファイルを編集することができます。emacsで CR+LF を

編集した場合、次の通り ”(DOS)” と表示されます。

----(DOS)---F1 dos.c (C Abbrev)--L1--All---------------

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

(2) vi / vim(RHEL5/CentOS)

RHEL5/CentOSの vi(vim)では、CR+LF、LF両方のテキストファイルを編集することができます。

vi(vim)でCR+LFを編集した場合、 “[dos]” と表示されます。

Page 44: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

39

2.5.3. 改行コードの変換

改行コードの変換方法を示します。

(1) LFから CR+LFへの変換

$ nkf -Lw UNIX/Linux系ファイル > outputファイル

(2) CR+LFから LFへの変換

$ nkf -Lu Windows系ファイル > outputファイル

Page 45: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

40

2.5.4. マニュアル

「高性能計算サーバシステム」を構成する各ソフトウェア製品のマニュアルを以下に示します。

表 2.5.4-1マニュアル一覧

関連製品名 マニュアル名称 形式 和 英

Intel Cluster

Toolkit Compiler

Edition for Linux

インテル® C++ コンパイラー リリースノート PDF ○

インテル® C++ コンパイラー 入門ガイド PDF ○

インテル® C++ コンパイラー ユーザー・リファレンス・ガイド HTML ○

インテル® Fortran コンパイラー リリースノート PDF ○

インテル® Fortran コンパイラー ユーザー・リファレンス・ガ

イド HTML ○

インテル® デバッガー コマンド・リファレンス PDF ○

PGI Compiler

Development Kit

PGI User's Guide (コンパイラ全般) PDF ○

PGI Tools Guide (デバッガ、プロファイラ関連) PDF ○

PGI Fortran Reference Manual PDF ○

PGI コンパイラ 使用ガイド - 使用法・チュートリアル PDF ○

PGI CDK 使用法の手引き PDF ○

PGI CDKインストールの手引き PDF ○

ライセンス発行の手引き PDF ○

Parallelnavi Base

Package

Parallelnavi Base Package 導入ガイド PDF ○

Parallelnavi Base Package 運用ガイド PDF ○

Parallelnavi Base Package メッセージ集 PDF ○

Parallelnavi Base Package ユーザーズガイド システ

ム管理編 PDF ○

Parallelnavi Base Package ユーザーズガイド 資源管

理編 PDF ○

Parallelnavi Base Package ユーザーズガイド NQS 基

本編 PDF ○

Parallelnavi Base Package ユーザーズガイド NQS 拡

張編 PDF ○

Parallelnavi Base Package ユーザーズガイド 並列実

行環境編 PDF ○

Parallelnavi Base Package ユーザーズガイド インター

コネクト制御編 PDF ○

Parallelnavi Base Package ユーザーズガイド ジョブ凍

結編 PDF ○

Parallelnavi

Language Package

Fortran文法書 PDF ○

Fortran使用手引書 PDF ○

Fortran翻訳時メッセージ PDF ○

Fortran実行時メッセージ PDF ○

C言語使用手引書 PDF ○

C++言語使用手引書 PDF ○

Page 46: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

41

XPFortran使用手引書 PDF ○

プログラミング支援ツール使用手引書 PDF ○

プロファイラ使用手引書 PDF ○

デバッガ使用手引書 PDF ○

MPIトレーサ使用手引書 PDF ○

SSL IIオンラインマニュアル PDF ○

SSL II スレッド並列機能オンラインマニュアル PDF ○

C-SSL IIオンラインマニュアル PDF ○

C-SSL II スレッド並列機能オンラインマニュアル PDF ○

SSLⅡ/MPIオンラインマニュアル PDF ○

BLAS LAPACK ScaLAPACKオンラインマニュアル PDF ○

MPI使用手引書 PDF ○

Parametric Job Organizer使用手引書 PDF ○

Gaussian09 Gaussian 09 User's Reference HTML ○

IOps Reference HTML ○

電子構造論による化学の探究 製本 ○

Linda Using Gaussian 09 with Linda HTML ○

GaussView GaussView 5 Reference PDF ○

Page 47: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

42

2.6. 利用上のご質問お問い合わせシステム ProjectWEB利用法

2.6.1. パスワードの変更

Webブラウザを起動し、以下の URLを入力します。

https://pjshr139.soln.jp/IJS06D5/pjwebroot/login.jsp

※以下は、Internet Explorer 8 を使用した場合の例です。

(1)ログイン IDとパスワードを入力し、ログインボタンをクリックします。

※ログイン ID とパスワードは、FOCUS スパコンシステムのアカウントと、初期パスワードが設定されて

います。

ログイン後、以下の画面が表示されますので、初期パスワードの変更をお願いします。

Page 48: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

43

(2)homeメニューより、個人情報/環境設定ボタンをクリックします。

以下の個人情報/環境設定画面が表示されます。

(3)パスワード変更をクリックします。

Page 49: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

44

以下のパスワード変更画面が表示されます。

(4)現在のパスワード、新しいパスワードを入力します。

入力が完了したら、設定ボタンをクリックします。

※パスワードは 8バイト以上で、数字、英字、特殊記号を組み合わせて下さい。

※ProjectWeb のパスワードを変更しても、FOCUS スパコンシステムのログインパスワードは変更さ

れません。

※FOCUSスパコンシステムのログインパスワード変更は、2.1.6パスワードの変更を参照下さい。

Page 50: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

45

2.6.2. QA管理の新規登録

(1)メニューバーの toolボタンをクリックします。

以下の案件管理ツール画面が表示されます。

(2)QA管理ボタンをクリックします。

Page 51: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

46

以下の画面が表示されます。

(3)QA管理より、新規登録ボタンをクリックします。

以下の QA管理-新規登録画面が表示されます。

(4)◆入力必須項目を入力します。

Page 52: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

47

※ファイルを添付する場合は、参照ボタンをクリックします。

※アップロードするファイルを選択し、開くボタンをクリックます。

Page 53: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

48

(5)入力が完了したら、登録ボタンをクリックします。

以下の QA管理-新規登録確認画面が表示されます。

(6)実行ボタンをクリックします。

Page 54: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

49

2.6.3. QA管理の追加登録および削除

(1)メニューバーの toolボタンをクリックします。

以下の案件管理ツール画面が表示されます。

(2)QA管理ボタンをクリックします。

Page 55: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

50

以下の画面が表示されます。

(3)QA管理より、すべて表示ボタンをクリックします。

質問した案件の一覧が表示されます。

(4)該当する案件の、詳細ボタンをクリックします。

Page 56: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

51

以下の QA管理-詳細表示画面が表示されます。

(5)質問した内容を変更(修正・回答に対する返信等)する場合は、更新ボタンをクリックします。

※質問した内容を削除する場合は、削除ボタンをクリックします。

以下の QA管理-更新画面が表示されます。

(6)変更箇所を入力します。

Page 57: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

52

(7)入力が完了したら、更新ボタンをクリックします。

以下の QA管理-更新確認画面が表示されます。

(8)実行ボタンをクリックします。

Page 58: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

53

2.7. 予約システム

FOCUSスパコンの計算ノード、FOCUSの端末利用室を1日単位で予約できます。

詳細は『FOCUSスパコン予約システム利用の手引き』をご覧ください。

2.8. スパコンネットワーク内 Webページ

FOCUSスパコンネットワーク内部に WWWサーバがあり、SSL-VPN接続した場合、新しい Webブラウザ

の Windowを開き、以下の URLにアクセスすると、FOCUSスパコンネットワーク内 Webページが表示

されます。

http://f001.j-focus.net

(ただし、FOCUS スパコンネットワーク内のページですので、FOCUS スパコンネットワークに接続した状

態でないと上記のサイトにはアクセス出来ません。)

『高性能計算サーバ 利用の手引き』 2.5.4.項マニュアル一覧にある、コンパイラ類、LSF 等のマニ

ュアルにアクセス、ダウンロードできる他、FOCUSスパコン更新情報等、様々な情報提供を行っておりま

す。

Page 59: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

54

3. A システム(フロントエンドサーバシステム・演算サーバシステ

ム)、Bシステム(データ処理サーバシステム)、Cシステム(クラ

ウドシステム)の利用方法

A システム(フロントエンドサーバシステム・演算サーバシステム)、B システム(データ処理サーバシ

ステム)、Cシステム(クラウドシステム)は、ジョブスケジューリングに Plarform LSF、開発環境(コン

パイラ)に gcc、「インテル・クラスター・ツールキット・コンパイラー・エディション」、「PGI CDK」を採用し

ています。

3.1. Intelコンパイラ

Aシステム、Bシステムでは、プログラム開発環境(コンパイラ)として「インテル® Cluster Studio

2011(インテル・クラスター・ツールキット・コンパイラー・エディション)」を利用することができます。

3.1.1. コンパイルコマンド

「インテル・クラスター・ツールキット・コンパイラー・エディション」には、以下のコマンドが含まれていま

す。

表 3.1.1-1 コンパイラ一覧(Intelコンパイラ)

使用言語 コマンド パス コマンド形式

Fortran ifort /home1/share/intel/compilerpro-

12.0.0.084/bin/intel64

ifort [オプション] ファイル…

C言語 icc /home1/share/intel/compilerpro-

12.0.0.084/bin/intel64

icc [オプション] ファイル…

C++ icpc /home1/share/intel/compilerpro-

12.0.0.084/bin/intel64

icpc [オプション] ファイル…

MPI

(Fortran)

mpiifo

rt

/home1/share/intel/impi/4.0.1.007/intel64/

bin

mpiifort [オプション] ファイル…

MPI(C言語) mpiicc /home1/share/intel/impi/4.0.1.007/intel64/

bin

mpiicc [オプション] ファイル…

MPI(C++) mpiicp

c

/home1/share/intel/impi/4.0.1.007/intel64/

bin

mpiicpc [オプション] ファイル…

Page 60: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

55

3.1.2. 環境変数設定

環境変数変更後は「インテル・クラスター・ツールキット・コンパイラー・エディション」のパスが優先にな

っています。

【環境変数設定】

$ . /home1/share/intel/ics/2011.0.013/ictvars.sh

プロセス並列(MPI)環境、MKL(Math Kernel Library)のリンク環境も同時に設定されています。

3.1.3. コンパイルオプション

「インテル・クラスター・ツールキット・コンパイラー・エディション」の主なコンパイルオプションを示します。

表 3.1.3-1 コンパイルオプション(Intelコンパイラ)

コンパイルオプション 説明

-c オブジェクトファイルの作成までを行ないます。

-o exe_file 実行可能ファイル名/オブジェクトファイル名を

exe_file に変更します。実行可能ファイル名の省略

時は a.out となります。

-fast 性能効能のオプション(-xHOST -O3 -ipo -no-

prec-div –static)が指定されます。

-xHost プログラムを実行するインテル・プロセッサー専用の最

適化コードを生成します。

-O1 サイズの最適化を行ないます。

-O2 最速化(デフォルト)を行ないます。

-O3 (-O2)の最適化に加えて、スカラー置換、ループアンロ

ール、分岐を除去するコード反復、より効率的にキャッ

シュを使用するループ・ブロッキングなど、強力なルー

プの最適化およびメモリーアクセスの最適化を行ない

ます。

-ip 単一ファイルの最適化を行います。

-ipo インライン化およびその他のプロシージャー間の最適

化が複数のソースファイル間で行ないます。

-prec-div 浮動小数点演算の精度を上げます。

-[no-]prec-div デフォルト(-prec-div)は、浮動小数点演算の精度を

上げます。

-no-prec-div を指定することにより、完全な IEEE

準拠の除算よりも多少精度が低い最適化が有効となり

ます。

-static 共用ライブラリとリンクしないことを指示します。

-parallel 自動並列を行ないます。

Page 61: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

56

コンパイルオプション 説明

-par-report[0,1,2,3] 自動パラレライザーの診断レベルを次のように制御し

ます。

0 – 診断情報を表示しません。

1 – 正常に並列化されたループを示します(デフォル

ト)。

2 – 並列化されなかったループに関する情報が追加さ

れます。

3 –自動並列化の妨げになると判断されたか、または

想定された依存関係についての情報(並列化されない

理由)が追加されます。

-openmp OpenMP指示子を有効にしてコンパイルします。

-openmp-report「0,1,2] OpenMP の並列化情報を表示します。

-mcmodel

[=small,medium,large]

メモリモデルを指定します。

small(デフォルト)

コードとデータはアドレス空間の最初の 2GB までに

制限されます。

medium

コードはアドレス空間の最初の 2GB までに制限され

ますが、データは制限されません。

large

コードもデータも制限されません。

-shared-intel インテル・クラスター・ツールキット・コンパイラー・エディ

ションで提供されるライブラリを動的にリンクします。

-static-intel インテル・クラスター・ツールキット・コンパイラー・エディ

ションで提供されるライブラリを静的にリンク(デフォル

ト)します。

-mkl

[=parallel,sequential,cluster]

MKLライブラリをリンクします。

parallel(デフォルト)

スレッド並列版の MKLライブラリをリンクします。

sequential

逐次版の MKLライブラリをリンクします。

cluster

MKL のクラスタライブラリ(IntelMPI ライブラリ/

ScaLAPACK/クラスタ用 FFT)および、逐次版 MKL

ライブラリをリンクします。

3.1.4. コンパイル方法

主なコンパイル方法を以下に示します。Fortran(ifort)のみを記述していますが、C 言語(icc)、

C++(icpc)の場合も同様の方法となります。

【逐次】

Page 62: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

57

$ ifort ソースファイル名

【自動並列】

$ ifort -parallel ソースファイル名

【OpenMP】

$ ifort –openmp ソースファイル名

Page 63: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

58

3.1.5. コンパイル方法(注意事項)

コンパイル/リンク時の注意事項を示します。

(1) Intelコンパイラにおいて、-Wlオプションの後に”,” を指定していますが、”,” の前後にスペ

ースを入力するとコンパイル/リンクエラーとなります。

(2) 2GBを超える配列

2GBを超える配列を使用する場合、-mcmodel(メモリモデル)に mediumまたは largeを指定し

てコンパイルします。リンク時に、適切なメモリモデルが指定されていない場合、【エラーメッセージ】

の形式でエラーとなります。

medium または large を指定した場合、インテルのランタイム・ライブラリーの適切なダイナミッ

ク・バージョンが使用されるように、-shared-intel コンパイラー・オプションも指定する必要が

あります。

【エラーメッセージ】

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

: relocation truncated to fit: R_X86_64_PC32 <some symbol>

【コンパイル】

$ ifort –mcmodel=medium –shared-intel ソースファイル名

3.1.6. 使用例

各コンパイラの利用方法を解説します。

サンプルプログラムは以下に格納されていますので、コピーしてご活用いただけます。

サンプルプログラム格納場所

/home1/share/intel/compilerpro-12.0.0.084/Samples/en_US/

3.1.6.1. Fortranコンパイラの使用例

$ ifort –o int_sin int_sin.f90

$ ./int_sin

3.1.6.2. Cコンパイラの使用例

$ icc –o int_sin ./int_sin.c

$ ./int_sin

Page 64: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

59

3.1.7. MPI(Intelコンパイラ)

Fortran/C/C++ プログラムに MPIライブラリをリンクし、プロセス並列プログラムを作成/実行

することができます。

3.1.7.1. コンパイル

MPIプログラムのコンパイル方法を示します。

MPI プログラムのコンパイル/リンクは、mpiifort(Fortran)、mpiicc(C)、mpiicpc(C++)を

使用します。mpiifort/mpiicc/mpiicpcは内部的にifort(Fortran)、icc(C)、icpc(C++)

コンパイラを呼び出し、利用者がヘッダファイルやライブラリの位置等を意識することなく利用できる環境

を提供します。

【Fortran】

$ mpiifort [コンパイルオプション] ソースファイル名

【C】

$ mpiicc [コンパイルオプション] ソースファイル名

【C++】

$ mpiicpc [コンパイルオプション] ソースファイル名

3.1.7.2. MPIプログラム実行(Intel MPI)

Intel MPIの MPIプログラム実行方法に関しては、3.4.2.6項に示します。

Page 65: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

60

3.1.8. MKL(Math Kernel Library)

MKLで提供される BLAS/LAPACK/ScaLAPACKのライブラリをリンクする方法を示します。

(1) -mklオプションを指定することで、MKLライブラリをリンクすることができます。通常はスレッド並

列版(-mkl=parallel)、動的ライブラリがリンクされます。静的ライブラリのリンクが指示され

た場合(-static-intel , -static , -fast)、MKLの静的ライブラリがリンクされます。

-fastオプションには -staticオプションが含まれています。

【スレッド並列/動的ライブラリ】

$ ifort ソースファイル名 -mkl

【スレッド並列/静的ライブラリ】

$ ifort ソースファイル名 -mkl -static-intel

【逐次/動的ライブラリ】

$ ifort ソースファイル名 -mkl=sequential

【逐次/静的ライブラリ】

$ ifort ソースファイル名 -mkl=sequential -static-intel

【MPI/動的ライブラリ】

$ mpiifort ソースファイル名 -mkl=cluster

【MPI/静的ライブラリ】

$ mpiifort ソースファイル名 -mkl=cluster -static-intel

(2) -mkl オプションを使用しない場合、ライブラリを個別に指定することができます。BLAS/

LAPACK/ScaLAPACKについて、個別にライブラリをリンクする時の手順を次項以降に示します。

環境変数 MKLROOTは、ictvars.sh , ictvars.cshで設定されます。

-Wl,--start-group/-Wl,--end-groupについて、”,” の後は続けて入力しま

す。スペースが含まれる場合、コンパイル時にエラーとなります。

Page 66: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

61

3.1.8.1. BLAS(Fortran)

Fortran(ifort)、C 言語(icc)において、BLAS(-lmkl_blas95_lp64)をリンクすることで、

MKLで提供されるベクトル演算/行列演算ライブラリ(BLAS)を利用することができます。

【Fortran(スレッド並列)】

$ ifort ソースファイル名

-L$MKLROOT/lib/em64t -lmkl_blas95_lp64

¥

-I$MKLROOT/include -I$MKLROOT/include/em64t/lp64

¥

-Wl,--start-group

¥

$MKLROOT/lib/em64t/libmkl_intel_lp64.a

¥

$MKLROOT/lib/em64t/libmkl_intel_thread.a

¥

$MKLROOT/lib/em64t/libmkl_core.a

¥

-Wl,--end-group -liomp5 -lpthread

【Fortran(逐次)】

$ ifort ソースファイル名

-L$MKLROOT/lib/em64t -lmkl_blas95_lp64

¥

-I$MKLROOT/include -I$MKLROOT/include/em64t/lp64

¥

-Wl,--start-group

¥

$MKLROOT/lib/em64t/libmkl_intel_lp64.a

¥

$MKLROOT/lib/em64t/libmkl_sequential.a

¥

$MKLROOT/lib/em64t/libmkl_core.a

¥

-Wl,--end-group -lpthread

Page 67: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

62

3.1.8.2. BLAS(C言語)

BLASルーチンはFortran形式のルーチンとなります。BLASルーチンをC言語から呼び出す場合、

Fortran形式の呼び出し規則に従う必要があります。

(1) 変数を値ではなくアドレスで渡します。

(2) データを Fortran 形式で格納します。C 言語で使用する場合は、Fortran 形式の呼び出し規則

に従う必要があります。

1 2 3 4 0 1 2 3

1 0

2 1

3 2

Fortran形式 C形式

【C言語(スレッド並列)】

$ icc ソースファイル名 ¥

-L$MKLROOT/lib/em64t -lmkl_blas95_lp64

¥

-I$MKLROOT/include -I$MKLROOT/include/em64t/lp64

¥

-Wl,--start-group

¥

$MKLROOT/lib/em64t/libmkl_intel_lp64.a

¥

$MKLROOT/lib/em64t/libmkl_intel_thread.a

¥

$MKLROOT/lib/em64t/libmkl_core.a

¥

-Wl,--end-group -liomp5 -lpthread

【C言語(逐次)】

$ icc ソースファイル名 ¥

-L$MKLROOT/lib/em64t -lmkl_blas95_lp64

¥

-I$MKLROOT/include -I$MKLROOT/include/em64t/lp64

¥

-Wl,--start-group

¥

$MKLROOT/lib/em64t/libmkl_intel_lp64.a

¥

$MKLROOT/lib/em64t/libmkl_sequential.a

¥

$MKLROOT/lib/em64t/libmkl_core.a

¥

-Wl,--end-group -lpthread

Page 68: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

63

3.1.8.3. CBLAS

C言語から CBLASを利用することができます。

【C言語(スレッド並列)】

$ icc ソースファイル名 ¥

-L$MKLROOT/lib/em64t -lmkl_blas95_lp64

¥

-I$MKLROOT/include -I$MKLROOT/include/em64t/lp64

¥

-Wl,--start-group

¥

$MKLROOT/lib/em64t/libmkl_intel_lp64.a

¥

$MKLROOT/lib/em64t/libmkl_intel_thread.a

¥

$MKLROOT/lib/em64t/libmkl_core.a

¥

-Wl,--end-group -liomp5 –lpthread

【C言語(逐次)】

$ icc ソースファイル名 ¥

-L$MKLROOT/lib/em64t -lmkl_blas95_lp64

¥

-I$MKLROOT/include -I$MKLROOT/include/em64t/lp64

¥

-Wl,--start-group

¥

$MKLROOT/lib/em64t/libmkl_intel_lp64.a

¥

$MKLROOT/lib/em64t/libmkl_sequential.a

¥

$MKLROOT/lib/em64t/libmkl_core.a

¥

-Wl,--end-group –lpthread

Page 69: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

64

3.1.8.4. LAPACK(Fortran)

Fortran(ifort)、C 言語(icc)において、LAPACK(-lmkl_lapack95_lp64)をリンクすること

で、MKLで提供される線形代数(LAPACK)を利用することができます。

【Fortran(スレッド並列)】

$ ifort ソースファイル名 ¥

-L$MKLROOT/lib/em64t -lmkl_lapack95_lp64

¥

-I$MKLROOT/include -I$MKLROOT/include/em64t/lp64

¥

-Wl,--start-group

¥

$MKLROOT/lib/em64t/libmkl_intel_lp64.a

¥

$MKLROOT/lib/em64t/libmkl_intel_thread.a

¥

$MKLROOT/lib/em64t/libmkl_core.a

¥

-Wl,--end-group -liomp5 -lpthread

【Fortran(逐次)】

$ ifort ソースファイル名 ¥

-L$MKLROOT/lib/em64t -lmkl_lapack95_lp64

¥

-I$MKLROOT/include -I$MKLROOT/include/em64t/lp64

¥

-Wl,--start-group

¥

$MKLROOT/lib/em64t/libmkl_intel_lp64.a

¥

$MKLROOT/lib/em64t/libmkl_sequential.a

¥

$MKLROOT/lib/em64t/libmkl_core.a

¥

-Wl,--end-group -lpthread

3.1.8.5. LAPACK(C言語)

LAPACKルーチンはFortran形式のルーチンとなります。LAPACKルーチンをC言語から呼び出す

場合、Fortran形式の呼び出し規則に従う必要があります。

(1) 変数を値ではなくアドレスで渡します。

(2) データを Fortran 形式で格納します。C 言語で使用する場合は、Fortran 形式の呼び出し規則

に従う必要があります。

Page 70: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

65

【C言語(スレッド並列)】

$ icc ソースファイル名

-L$MKLROOT/lib/em64t -lmkl_lapack95_lp64

¥

-I$MKLROOT/include -I$MKLROOT¥include/em64t/lp64

¥

-Wl,--start-group

¥

$MKLROOT/lib/em64t/libmkl_intel_lp64.a

¥

$MKLROOT/lib/em64t/libmkl_intel_thread.a

¥

$MKLROOT/lib/em64t/libmkl_core.a

¥

-Wl,--end-group -liomp5 -lpthread

【C言語(逐次)】

$ icc ソースファイル名

-L$MKLROOT/lib/em64t -lmkl_lapack95_lp64

¥

-I$MKLROOT/include -I$MKLROOT¥include/em64t/lp64

¥

-Wl,--start-group

¥

$MKLROOT/lib/em64t/libmkl_intel_lp64.a

¥

$MKLROOT/lib/em64t/libmkl_sequential.a

¥

$MKLROOT/lib/em64t/libmkl_core.a

¥

-Wl,--end-group -lpthread

3.1.8.6. ScaLAPACK

ScaLAPACKを利用するには、ScaLAPACKライブラリ(-lmkl_scalapack_lp64)をリンクします。

【Fortran(MPI)】

$ mpiifort ソースファイル名 ¥

-L$MKLROOT/lib/em64t ¥

-lmkl_scalapack_lp64 ¥

-lmkl_blacs_intelmpi_lp64 ¥

-lmkl_lapack ¥

-lmkl_intel_lp64 –lmkl_intel_thread –lmkl_core

¥

-liomp5 -lpthread

Page 71: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

66

【Fortran(MPI)】

$ mpiicc ソースファイル名 ¥

-L$MKLROOT/lib/em64t ¥

-lmkl_scalapack_lp64 ¥

-lmkl_blacs_intelmpi_lp64 ¥

-lmkl_lapack ¥

-lmkl_intel_lp64 –lmkl_intel_thread –lmkl_core

¥

-liomp5 -lpthread

Page 72: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

67

3.1.9. エンディアン

Aシステム、Bシステムはリトルエンディアンを採用しています。

Intel コンパイラで作成した Fortran プログラムの書式なし入出力において、環境変数

F_UFMTENDIAN を使用することにより、ビッグエンディアン形式でのファイル出力、または、ビッグエン

ディアン形式のファイル入力が可能となります。

F_UFMTENDIAN MODE | [MODE; ] EXCEPTION

MODEは形式を指定します。littleはリトルエンディアン形式であり、変換されません。big

はビッグエンディアン形式であり、入力はビッグエンディアンからリトルエンディアンに変換、

出力はリトルエンディアンからビッグエンディアンに変換されます。

EXCEPTIONには、例外を定義します。

MODE;EXCEPTIONは空白を含むことはできません。

(1) 全入出力変換

全ての入力/出力操作で、READ ではビッグエンディアンからリトルエンディアンへ変換、

WRITE ではリトルエンディアンからビッグエンディアンへ変換します。

$ F_UFMTENDIAN=big ; export F_UFMTENDIAN

(2) 特定ユニット変換

特定のユニット番号(10,20)について、エンディアンを変換します。

$ F_UTMTENDIAN=10,20 ; export F_UFMTENDIAN

(3) 特定ユニット変換(範囲指定)

特定のユニット番号の範囲(10 ~ 20)を指定して、エンディアンを変換します。

$ F_UFMTENDIAN=10-20 ; export F_UFMTENDIAN

(4) 一部場外

ユニット番号 10を除き、エンディアンを変換します。

$ F_UFMTENDIAN=big;little:10 ; export F_UFMTENDIAN

Page 73: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

68

3.1.10. Intel Compiler V11の利用法

Intel Compiler V11は

/home1/share/intelV11

にインストールしております。環境設定用スクリプトファイルは、

/home1/share/intelV11/ictce/3.2.2.013/ictvars.sh

になっております。ご利用の際は、

source /home1/share/intelV11/ictce/3.2.2.013/ictvars.sh

として環境設定お願いします。

コンパイル例

mpiifort test.f

実行スクリプト例

#!/bin/bash

#BSUB -q s128t24h

#BSUB -n 24

#BSUB -R "span[ptile=12]"

#BSUB -a intelmpi

#BSUB -J test

#BSUB -o stdout.%J

#BSUB -e stderr.%J

source /home1/share/intelV11/ictce/3.2.2.013/ictvars.sh

mpirun.lsf ./a.out

3.1.11. Intel Compiler V12.1 の利用法

Intel Compiler V12.1は

/home1/share/intelV12.1

にインストールしております。環境設定用スクリプトファイルは、

/home1/share/intelV12.1/ics/2012.0.032/ictvars.sh

になっております。ご利用の際は、

source /home1/share/intelV12.1/ics/2012.0.032/ictvars.sh

として環境設定お願いします。

Page 74: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

69

3.1.12. インテル® Composer XE 2013 の利用法

インテル® Composer XE 2013は

/home1/share/intelv13

にインストールしております。環境設定用スクリプトファイルは、

/home1/share/intelv13/ics/2013.0.028/ictvars.sh

になっております。ご利用の際は、

source /home1/share/intelv13/ics/2013.0.028/ictvars.sh

として環境設定お願いします。

Page 75: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

70

3.2. PGIコンパイラ

3.2.1. コンパイルコマンド

「PGI CDK」には、以下のコマンドが含まれています。

表 3.2.11-1 コンパイル一覧(PGIコンパイラ)

使用言語 コマンド パス コマンド形式

Fortran pgf90

(*1)

/home1/share/pgi/linux86-64/11.1/bin pgf90 [オプション] ファイル…

C言語 pgcc /home1/share/pgi/linux86-64/11.1/bin pgcc [オプション] ファイル…

C++ pgCC /home1/share/pgi/linux86-64/11.1/bin pgCC [オプション] ファイル…

MPI

(Fortran)

mpif90 /home1/share/pgi/linux86-

64/2011/mpi/mpich/bin

mpif90 [オプション] ファイル…

MPI(C言語) mpicc /home1/share/pgi/linux86-

64/2011/mpi/mpich/bin

mpicc [オプション] ファイル…

MPI(C++) mpiCC /home1/share/pgi/linux86-

64/2011/mpi/mpich/bin

mpiCC [オプション] ファイル…

*1: ここでは代表してpgf90を記載しています。

3.2.2. 環境変数設定

PGIコンパイラを実行するための環境変数を設定は、下記のようにスクリプトを実行します。

【環境変数設定】

$ . /home1/share/pgi/linux86-64/11.1/pgi.sh

【環境変数設定(MPI)】

$ . /home1/share/pgi/linux86-64/11.1/mpi.sh

Page 76: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

71

3.2.3. コンパイルオプション

「PGI CDK」の主なコンパイルオプションを示します。

表 3.2.3-1 コンパイルオプション(PGIコンパイラ)

コンパイルオプション 説明

-fast 最適化のためのセットオプション、内容は「pgf90 -fast -

help」で確認可能

-mcmodel=medium 2Gbyteを超えるメモリをサポートします。

-mp OpenMPを使用します。

-Mconcur 自動並列化を指示します。

-Minfo 最適化等コンパイル時の情報を出力します。

-Mneginfo 最適化が不可能であった部分の情報を出力します。

-o オブジェクトファイルの名前を指定します。

-l リンクするライブラリ名を指定します。

3.2.4. コンパイル方法

主なコンパイル方法を以下に示します。Fortran(pgf90)のみを記述していますが、C 言語(pgcc)、

C++(pgCC)の場合も同様の方法となります。

【逐次】

$ pgf90 –fast ソースファイル名

【自動並列】

$ pgf90 –fast –Minfo –Mconcur ソースファイル名

【OpenMP】

$ pgf90 –fast –Minfo –mp ソースファイル名

3.2.5. 使用例

各コンパイラの利用方法を解説します。

サンプルプログラムは以下に格納されていますので、コピーしてご活用いただけます。

サンプルプログラム格納場所

/home1/share/pgi/linux86-64/11.1/etc/samples

Page 77: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

72

3.2.5.1. Fortranコンパイラの使用例

$ pgf90 –fast test.f90

$ ./a.out

3.2.5.2. Fortranコンパイラの使用例(自動並列化)

$ pgf90 –fast –Minfo –Mconcur test.f90

$ setenv OMP_NUM_THREADS 4 # 並列数4の場合(csh/tcsh)

$ export OMP_NUM_THREADS=4 # 並列数4の場合(sh/bash)

$ ./a.out

3.2.5.3. Cコンパイラの使用例(OpenMP)

$ pgcc –fast –Minfo –mp test.c

$ setenv OMP_NUM_THREADS 4 # 並列数2の場合(csh/tcsh)

$ export OMP_NUM_THREADS=4 # 並列数2の場合(sh/bash)

$ ./a.out

3.2.6. MPI(PGIコンパイラ)

Fortran/C/C++ プログラムに MPIライブラリをリンクし、プロセス並列プログラムを作成/実行

することができます。

3.2.6.1. コンパイル

MPIプログラムのコンパイル方法を示します。

【Fortran】

$ mpif90 –o mpi.out mpi.f

【C】

$ mpicc -o mpi.out mpi.c

【C++】

$ mpiCC –o mpi.out mpi.C

3.2.6.2. MPIプログラム実行

以下の方法にて、実行してください。

【MPICH-2の場合】

$ mpirun –np 4 ./mpi.out

Page 78: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

73

3.2.7. PGIコンパイラ 10.9 の利用法

PGIコンパイラ 10.9 は

/home1/share/pgi_10.9

にインストールしております。環境設定用スクリプトファイルは、

/home1/share/pgi_10.9/linux86-64/10.9/mpi.sh

になっております。ご利用の際は、

source /home1/share/pgi_10.9/linux86-64/10.9/mpi.sh

として環境設定お願いします。

3.2.8. PGIコンパイラ 11.1 の利用法

PGIコンパイラ 11.1 は

/home1/share/pgi_11.1

にインストールしております。環境設定用スクリプトファイルは、

/home1/share/pgi_11.1/linux86-64/11.1/mpi.sh

になっております。ご利用の際は、

source /home1/share/pgi_11.1/linux86-64/11.1/mpi.sh

として環境設定お願いします。

Page 79: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

74

3.3. GCC(GNU Compiler Collection)

3.3.1. コンパイルコマンド

A システム、B システムに、GCC(GNU Compiler Collection)をインストールしています。

openmpiを使用する場合は、下記のパスを指定して下さい。

表 3.3.1-1 コンパイラ一覧(GCC)

システム名 使用言語 コマンド バージョ

パス

Aシステム

Bシステム

Fortran g77 3.4.6 /usr/bin(RHEL5標準提供)

C言語 gcc 4.1.2 /usr/bin(RHEL5標準提供)

C++ g++ 4.1.2 /usr/bin(RHEL5標準提供)

OpenMPI

(Fortran)

mpif90 1.4.1 /opt/openmpi/gnu/bin

OpenMPI(C言語) mpicc 1.4.1 /opt/openmpi/gnu/bin

OpenMPI(C++) mpiCC 1.4.1 /opt/openmpi/gnu/bin

gccは 2種類のバージョンがインストールされており、デフォルトではバージョン 4.1.2が利用可能で

す。バージョン 4.4.5もインストールされており、ユーザのホームディレクトリにある、

.bashrc_gccがバージョン 4.4.5を利用する際の環境変数設定のサンプルになりますので、ご利用

の際は参考にしてください。

Lapackを利用するには以下のように Lapackライブラリをリンクします。

gcc –llapack test.c –o test.o

Blasを利用するには以下のように Blasライブラリをリンクします。

gcc –lblas test.c –o test.o

Page 80: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

75

3.4. プログラム実行

Aシステム、Bシステム、Cシステムのジョブスケジューリングには「Plarform LSF」を採用していま

す。

3.4.1. キュー

分散メモリ型並列計算機でジョブを投入できるキューの一覧を示します。

以下はフロントエンドサーバシステムから利用可能なキュー名を示します。

キュー名

最大

ジョブ

最長

実行時

最大

ノード数

最大使

コア数

キュー内で

使用可能な

総コア数

ユーザ毎

使用可能

総コア数

システム

s128n1debug 未設定 3分 1 12 12 12 A

s128n2debug 未設定 3分 2 24 24 24 A

s128t24h 未設定 24時

間 150 1800 1800 1800

A

s128n1m256gb 未設定 24時

間 2 16 16 16

B

c24t24h 未設定 24時

間 20 240 240 240

C

s128we 未設定 72時

間 150 1800 1800 1800

A

c24we 未設定 72時

間 20 240 240 240

C

※s128t24h, s128n1m256gb, c24t24h, s128we, c24we の最大ノード数、コア数は、計算資源の予約状況により変動します

(1) デフォルトキューは「s128n1debug」となります。ジョブ実行時にキュー名が省略された場合

「s128n1debug」で実行されます。

(2) 実際に本システムを利用する際には、bqueuesコマンドで利用できるキュー名を確認して下さい。

bqueues

とすると、ユーザ毎にどのキューが利用できるかが表示されます。

(3) 「s128we」(Aシステム)と「c24we」(Cシステム)は週末キューとして稼働しています。毎週金曜

10 時から翌月曜 10 時までの間にジョ ブが実行されます。この時間外に投入されたジョブは待

ち状態となります。課金は演算サーバ利用時間(ノード占有経過時間)に応じて行い、 基本サ

ービス(共有資源を並んで使うサービス)と同じ利用料金が適用されます。

Page 81: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

76

3.4.2. ジョブ実行方法

ジョブを実行するには、フロントエンドサーバシステムまたはデータ処理サーバシステムから bsubコ

マンドを実行します。

3.4.2.1. バッチリクエストの投入

ジョブを実行するために、バッチリクエストを事前に作成する必要があります。bsub コマンドにジョブ

投入スクリプトを指定することで、ジョブがキューイングされ実行されます。

$ bsub < ./run.sh

Job <○○○○> is submitted to default queue < s128n1debug >.

bsubコマンドの主なオプションを示します。

表 3.4.2.1-1 主要オプション(bsub)

オプション 概要

-q キュー名 投入するキューを指定します。

-J ジョブ名 ジョブ名を指定します。

-n コア数 ジョブで使用するコア数を指定します。

-a 使用する機能

OpenMP、IntelMPI、OpenMPIなどを使用する場合に、使用する機能に合

わせて、以下を指定します。

openmp:OpenMPを使用する場合

intelmpi:IntelMPIを使用する場合

openmpi:OpenMPIを128ノード以内で使用する場合

-R "リソース要件"

指定したリソース要件を満たすノードでジョブを実行します。

例:-n で指定したコア数を、1ノードで実行する場合

-R "span[hosts=1]"

1ノードに割り当てるコア数を 2コアにする場合

-R "span[ptile=2]"

-W 経過時間 ジョブの経過時間制限値を指定します。

経過時間は分単位または、HH:MM で指定することができます。

-o ファイル名

-oo ファイル名

標準出力ファイル名を指定します。標準出力が必要な場合は-o か-oo を指

定してください。-oは追加書き、-ooは上書きします。-eや-eo オプション

が指定されていない場合は、標準エラー出力も出力されます。

-e ファイル名

-eo ファイル名

標準エラー出力ファイルを指定します。-e は追加書き、-eo は上書きしま

す。

-r

システムの異常などでジョブが実行不能となった際に、本オプションが指定さ

れていると、別のノードで再実行されます。本オプションが指定されていない

場合は、再実行されずに終了します。

Page 82: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

77

3.4.2.2. ジョブ投入スクリプトの作成

ジョブ投入のためのバッチスクリプトを作成します。

(1) bsubオプション(デフォルト値の指定)

ジョブ投入スクリプトはコメント行(#)として “BSUB” で始まる行に、bsubオプションを指定する

ことで、bsubコマンド実行時の省略値を指定することができます。

(2) bsubオプション解析(ジョブ投入スクリプト)

ジョブ制御(Plarform LSF)は、ジョブ投入スクリプトについて、bsub オプションを次の通り解

釈します。

(3) 環境変数

bsubコマンド実行時、ジョブ実行時に環境変数が設定されます。設定される主な環境変数を示し

ます。

表 3.4.2.2-1 環境変数

環境変数 内容

LS_SUBCWD ジョブが投入されたカレントディレクトリ

LSB_EXECHOSTS ジョブが実行されるホスト名のリスト

LSB_MCPU_HOSTS ジョブ実行に使用されるホストとコア数のリスト

(例) j010.p 12 j011.p 12 ・・・

LSB_JOBID ジョブ ID

LSB_JOBNAME -J で指定したジョブ名。-Jが指定されていない場合は、実際に

指定されたコマンド列がジョブ名になります。

Page 83: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

78

3.4.2.3. 逐次ジョブを実行する場合

逐次(並列計算を行わない方式)で実行する時に作成するバッチスクリプトの例を示します。

$ vi run.sh

#!/bin/bash

#BSUB -q s128t24h

#BSUB -n 1 …………… (1)

#BSUB -J test_serial

#BSUB -o stdout.%J …………… (2)

#BSUB -e stderr.%J …………… (3)

./a.out …………… (4)

(1) ジョブで使用するコア数(-n)を指定します。逐次ジョブの場合、プロセス数は 1 となりますので、

指定値は “–n 1“ を指定します。

(2) 標準出力ファイルを指定します。%Jはジョブ IDに変換されます。

(3) 標準エラー出力ファイルを指定します。%Jはジョブ IDに変換されます。

(4) プログラム(a.out)を実行します。

Page 84: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

79

3.4.2.4. スレッド並列ジョブを実行する場合

スレッド並列(単体の演算ノードの範囲内で並列計算を行う方式)でジョブを実行する時に作成するバ

ッチスクリプトの例を示します。

スレッド並列ジョブを実行する際には、逐次ジョブの定義に加え、下記(2)、(3)、(4)の定義が必要

です。

$ vi run.sh

#!/bin/bash

#BSUB -q s128t24h

#BSUB -n 6 …………… (1)

#BSUB -R "span[hosts=1]" …………… (2)

#BSUB -a openmp …………… (3)

#BSUB -J test_openmp

#BSUB -o stdout.%J

#BSUB -e stderr.%J

export OMP_NUM_THREADS=6 …………… (4)

./a.out …………… (5)

(1) ジョブで使用するコア数(-n)を指定します。上記の例では、6スレッドで実行するために-n 6を

指定しています。

(2) 6 コアを 1 ノード上で確保する必要があるため、-R "span[hosts=1]"を指定します。これに

より、1ノード上で 6コアを確保できるノードにジョブが割り当てられます。

(3) OpenMPによるスレッド並列を使用するため、-a openmpを指定します。

(4) 環境変数 PARALLEL , OMP_NUM_THREADSに(1)で指定したコア数を指定します。

(5) プログラム(a.out)を実行します。

Page 85: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

80

3.4.2.5. MPIプログラム(openMPI)を実行する場合

プロセス並列(複数の演算ノードで並列計算を行う方式)のジョブを OpenMPI で実行する時に作成す

るバッチスクリプトの例を示します。

OpenMPI によるプロセス並列ジョブを実行する際には、逐次ジョブの定義に加え、下記(2)、(3)、

(4)、(5)の定義が必要です

$ vi run.sh

#!/bin/bash

#BSUB -q s128t24h

#BSUB -n 24 …………… (1)

#BSUB -a openmpi …………… (2)

#BSUB -J test_openmpi

#BSUB -o stdout.%J

#BSUB -e stderr.%J

export PATH=/opt/openmpi/gnu/bin:$PATH …………… (3)

export LD_LIBRARY_PATH=/opt/openmpi/gnu/lib:$LD_LIBRARY_PATH ……………

(4)

mpirun.lsf ./a.out …………… (5)

(1) ジョブで使用するコア数(-n)を指定します。

(2) OpenMPIによるプロセス並列を使用するため、-a openmpiを指定します。

(3) 使用する MPIのモジュールのパス PATHを設定します。(※)

(4) 使用する MPIのライブラリのパスを設定します。(※)

(5) プログラム(a.out)を実行します。mpirun.lsf を使用することで、OpenMPI を使用するのに

必要な設定を LSFが自動で行います。(※)

(※)プロセス並列時に環境変数を定義するには、(3)、(4)の様に exportコマンドで定義するか、

(5)の定義を以下の様に修正してください。PATHや LD_LIBRARY_PATH以外でも同様です。

mpirun.lsf -x PATH=/opt/openmpi/gnu/bin:$PATH ¥

-x LD_LIBRARY_PATH=/opt/openmpi/gnu/lib:$LD_LIBRARY_PATH ./a.out

Page 86: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

81

3.4.2.5.1 MPIプログラム(Intel MPI)を実行する場合

プロセス並列(複数の演算ノードで並列計算を行う方式)のジョブを IntelMPI で実行する時に作成

するバッチスクリプトの例を示します。

IntelMPI によるプロセス並列ジョブを実行する際には、逐次ジョブの定義に加え、下記(2)、(3)、

(4)の定義が必要です。

$ vi run.sh

#!/bin/bash

#BSUB -q s128t24h

#BSUB -n 24 …………… (1)

#BSUB -a intelmpi …………… (2)

#BSUB -J test_intelmpi_hybrid

#BSUB -o stdout.%J

#BSUB -e stderr.%J

source /home1/share/intel/ics/2011.0.013/ictvars.sh …………… (3)

mpirun.lsf ./a.out …………… (4)

(1) ジョブで使用するコア数(-n)を指定します。

(2) IntelMPIによるプロセス並列を使用するため、-a intelmpiを指定します。

(3) Intelコンパイラを用いて作成した実行ファイルを実行する際は環境変数等を一括して設定する

スクリプトを実行するこの行が必要になります。使用する Intel コンパイラが決まっている場合

には、適宜その環境用のスクリプトを実行する様パスを変更してください。(※)

(4) プログラム(a.out)を実行します。

(※)(3)の他に環境変数を定義するには、OpenMPIのスクリプト例の(※)をご参照下さい。

Page 87: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

82

3.4.2.6. MPIプログラム(mpich2)を実行する場合

プロセス並列(複数の演算ノードで並列計算を行う方式)のジョブを PGIコンパイラで作成した MPIプ

ログラム(mpich2)で実行する時に作成するバッチスクリプトの例を示します。

mpich2 によるプロセス並列ジョブを実行する際には、逐次ジョブの定義に加え、下記(2)、(3)、

(4)の定義が必要です。

$ vi run.sh

#!/bin/bash

#BSUB -q s128t24h

#BSUB -n 24 …………… (1)

#BSUB -a "openmp intelmpi" …………… (2)

#BSUB -R "span[ptile=2]" …………… (3)

#BSUB -J test_intelmpi_hybrid

#BSUB -o stdout.%J

#BSUB -e stderr.%J

export OMP_NUM_THREADS=6 …………… (4)

source /home1/share/intel/ics/2011.0.013/ictvars.sh …………… (5)

mpirun.lsf ./a.out …………… (6)

(1) ジョブで使用するコア数(-n)を指定します。

(2) mpich2によるプロセス並列を行うため、-a mpich2を指定します。

(3) PGI コンパイラが用意する mpich2環境を設定します。使用する PGI コンパイラが決まって

いる場合には、適宜その環境用のスクリプトを実行する様パスを変更してください。(※)

(4) プログラム(a.out)を実行します。(※)

(※)(3)の他に環境変数を定義するには、OpenMPIのスクリプト例の(※)をご参照下さい。

Page 88: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

83

3.4.2.7. ハイブリッド並列ジョブを実行する場合

ハイブリッド並列(スレッド並列とプロセス並列の混合計算を行う方式)でジョブを実行する時に作成す

るバッチスクリプトの例を示します。

ハイブリッド並列ジョブを実行する際には、逐次ジョブの定義に加え、下記(2)、(3)、(4)の定義が

必要です。(下記は演算ノードを 4 台/各ノード内で、2 コアスレッド並列/ノード間のプロセス並列を

IntelMPIで実施する場合です。)

$ vi run.sh

#!/bin/bash

#BSUB -q s128t24h

#BSUB -n 8 …………… (1)

#BSUB -R "span[ptile=2]"

#BSUB -a intelmpi …………… (2)

#BSUB -J test_openmpi

#BSUB -o stdout.%J

#BSUB -e stderr.%J

source /home1/share/intel/ics/2011.0.013/ictvars.sh …………… (3)

export LSB_PJL_TASK_GEOMETRY="{(0)(1)(2)(3)}" …………… (4)

mpirun.lsf a.out …………… (5)

(1) ジョブで使用するコア数(-n)を指定します。

(2) IntelMPIによるプロセス並列を使用するため、-a intelmpiを指定します。

(3) Intel コンパイラを用いて作成した実行ファイルを実行する際は環境変数等を一括して設定

するスクリプトを実行するこの行が必要になります。使用する Intelコンパイラが決まってい

る場合には、適宜その環境用のスクリプトを実行する様パスを変更してください。(※)

(4) 環境変数 LSB_PJL_TASK_GEOMETRY を定義します。()内は、ノード毎に実行する各スレッ

ドのタスク IDが入ります。詳細が不明な場合は記載例の様に、使用する演算ノードの台数分

()を記載し、その中に 0から順に数字を記載します。その場合、各ノードで 1つのスレッド並

列計算を実施します。

(5) プログラム(a.out)を実行します。(※)

(※)(3)の他に環境変数を定義するには、OpenMPIのスクリプト例の(※)をご参照下さい。

Page 89: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

84

3.4.3. ジョブの実行状況の確認

ジョブの実行状況を確認する場合には、bjobsコマンドを使用します。

3.4.3.1. 実行状況(bjobs)

該当する利用者が投入したジョブの情報(REQUEST NAME、REQUEST ID、USER、PRI、STATE、

STEPNO)を表示するには bjobs コマンドを実行します。

また、オプション -z をつけるとグループユーザの利用状況も確認できます。

$ bjobs

JOBID USER STAT QUEUE FROM_HOST EXEC_HOST JOB_NAME

SUBMIT_TIME

1234 uabc0001 RUN s128n1debug f002.p j081.p *st_serial

XXX X XX:XX

…省略…

$ bjobs -z

==== uabc0001 ====

JOBID USER STAT QUEUE FROM_HOST EXEC_HOST JOB_NAME

SUBMIT_TIME

1234 uabc0001 RUN s128n1debug f002.p j081.p *st_serial

XXX X XX:XX

==== uabc0002 ====

No unfinished job found

==== uabc0003 ====

No unfinished job found

…省略…

(1) JOBID

LSF がジョブに割り当てたジョブ ID が表示されます。ジョブの削除(bkill)などで指定する識

別子となります。

(2) USER

バッチリクエスト(ジョブ)の実行者を表示します。

(3) STAT

ジョブの状態を表示します。主なジョブの状態を以下の表に示します。

表 3.4.3.1-1 ジョブ状態(bjobsコマンド)

状態 説明

PEND ジョブは保留中です。

PSUSP ジョブは、保留中に、その所有者または LSF 管理者によって中断されました。

RUN ジョブは、現在実行中です。

USUSP ジョブは、保留中に、その所有者または LSF 管理者によって中断されました。

SSUSP ジョブは LSF によって中断されました。

DONE ジョブは、状態 0 で終了しました。

EXIT ジョブは、0 -以外の状態で終了しました。

UNKWN システムの異常により、ジョブの状態が取得できません。

Page 90: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

85

(4) QUEUE

ジョブが属するキューの名前を表示します。

(5) FROM_HOST

ジョブが投入されたホスト名を表示します。

(6) EXEC_HOST

ジョブが実行されているホスト名を表示します。

(7) JOB_NAME

ジョブ名(未指定の場合はコマンド文字列)を表示します。

(8) SUBMIT_TIME

ジョブの投入時間を表示します。

3.4.3.2. 利用可能なキューの確認方法

利用可能なキューを確認するには、コマンドラインで

とします。

【実行例】

-bash-3.2$ bqueues

QUEUE_NAME PRIO STATUS MAX JL/U JL/P JL/H NJOBS PEND RUN

SUSP

s128n1debug 35 Open:Active - - - - 0 0 0

0

s128t24h 30 Open:Active - - - - 2024 1408 616

0

c24t24h 30 Open:Active - - - - 16 0 16 0

3.4.3.3. 利用可能なノード数の確認方法

コマンドラインで実行しますと S128 クラスタ(A システム)及び C24 クラスタ(C システム)の空きノード

数を確認する freenodes というコマンドを用意しています。ジョブ投入のための空きノード数の確認の

目安にご利用ください。

【実行例】

-bash-3.2$ freenodes

Number of free nodes in s128 with QDR-IB connected is 3 / 137 .

Number of free nodes in c24 with GbE connected is 16 / 20 .

bqueues

Page 91: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

86

3.4.4. ジョブの削除

ジョブをキャンセルするには bkillコマンドを実行します。bjobs コマンドなどで確認したジョブ IDを

指定します。

$ bkill 1234

Job <1234> is being terminated

bkill ジョブ ID ジョブ ID ジョブ ID bkillの後に、ジョブ IDをまとめて指定すると、複数の

ジョブを一度にキャンセルすることができます。

上記の方法でキャンセルできない場合は「-r」を追加して強制的にキャンセルします。

bkill –r ジョブ ID

3.4.5. バッチリクエストの実行途中結果

ジョブの実行中において、標準出力、標準エラー出力の途中結果を bpeek コマンドで表示することが

できます。

bpeekコマンドのオプションに –f を指定すると、tail –f と同様の動作になります。

$ bpeek [-f] ジョブ ID

3.4.6. ジョブの実行結果

ジョブの標準出力、及び、標準エラー出力の出力先ファイルは、bsubのオプションで指定します。ジョ

ブの標準出力や標準エラー出力が必要な場合は、下記のオプションを指定してください。

オプション 説明

-o ファイル名

指定したファイルに標準出力を追加書きします。-eや-eoオプション

が指定されていない場合は、標準エラー出力もこのファイルに出力さ

れます。

-oo ファイル名

指定したファイルに標準出力を上書きします。-eや-eoオプションが

指定されていない場合は、標準エラー出力もこのファイルに出力され

ます。

-e ファイル名 指定したファイルに標準エラー出力を追加書きします。

-eo ファイル名 指定したファイルに標準エラー出力を上書きします。

Page 92: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

87

4. SPARC64サーバ

SPARC64サーバは、Parallelnavi (パラレルナビ)を採用し、ジョブスケジューラの NQS、プログ

ラム開発環境としてLanguage Package(以降、富士通コンパイラ)が利用可能です。

4.1. 富士通コンパイラ

4.1.1. コンパイルコマンド

「富士通コンパイラ」には、以下のコマンドが含まれています。

表 4.1.1-1 コンパイル一覧(Parallelnavi Language Package)

使用言語 コマンド パス コマンド形式

Fortran frt /opt/FSUNf90/bin frt [オプション] ファイル…

C言語 fcc /opt/FSUNf90/bin fcc [オプション] ファイル…

C++ FCC /opt/FSUNf90/bin FCC [オプション] ファイル…

MPI

(Fortran)

mpifrt /opt/FJSVmpi2/bin mpifrt [オプション] ファイル…

MPI(C言語) mpifcc /opt/FJSVmpi2/bin mpifcc [オプション] ファイル…

MPI(C++) mpiFCC /opt/FJSVmpi2/bin mpiFCC [オプション] ファイル…

4.1.2. 環境変数設定

環境変数PATH、LD_LIBRARY_PATH_64に以下の内容を加える。

【環境変数設定】

PATH=/opt/FJSVmpi2/bin:/opt/FJSVpnple/bin:/opt/FSUNf90/bin:$PATH ; export

PATH

LD_LIBRARY_PATH_64=/opt/FJSVmpi2/lib/sparcv9:/opt/FJSVpnple/lib/sparcv9:/op

t/FSUNf90/lib/sparcv9:$LD_LIBRARY_PATH_64 ; export LD_LIBRARY_PATH_64

Page 93: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

88

4.1.3. コンパイルオプション

「Parallelnavi Language Package」の主なコンパイルオプションを示します。

表 4.1.3-1 コンパイルオプション(Parallelnavi Language Package)

コンパイルオプション 説明

-c オブジェクトファイルの作成までを行ないます。

-o exe_file 実行可能ファイル名/オブジェクトファイル名を exe_file に

変更します。実行可能ファイル名の省略時は a.out となりま

す。

-Kfast 高速化のための最適化オプションを誘導する複合オプションで

す。

-Kparallel 自動並列化を行ないます。

-KOMP 高速化のための最適化オプションを誘導する複合オプションで

す。

-SSL2 C-SSL Ⅱ、C-SSL Ⅱスレッド並列機能、および BLAS/LAPACK

をリンクします。

-SSL2BLAMP 単一ファイルの最適化を行います。

-Qt コンパイルリストを出力します。ソースリスト、コンパイル時に有効

となったオプション、アンローリング情報、並列化情報が得られま

す。ソースファイル名の拡張子を.lst としたファイルへ出力しま

す。

4.1.4. コンパイル方法

主なコンパイル方法を以下に示します。Fortran(frt)のみを記述していますが、C 言語(fcc)、

C++(FCC)の場合も同様の方法となります。

【逐次】

$ frt ソースファイル名

【自動並列】

$ frt -Kparallel ソースファイル名

【OpenMP】

$ frt –KOMP –Kparallel ソースファイル名

Page 94: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

89

4.1.5. 使用例

各コンパイラの利用方法を解説します。

サンプルプログラムは以下に格納されていますので、コピーしてご活用いただけます。

サンプルプログラム格納場所 /opt/FSUNf90/sample

4.1.5.1. Fortranコンパイラの使用例

$ frt test.f90

$ ./a.out

4.1.5.2. Cコンパイラの使用例

$ fcc –o aaa ./aaa.c

$ ./aaa

4.1.5.3. C++コンパイラの使用例

$ FCC –o aaa ./aaa.c

$ ./aaa

4.1.6. MPI

Fortran/C/C++ プログラムに MPIライブラリをリンクし、プロセス並列プログラムを作成/実行

することができます。

4.1.6.1. コンパイル

MPIプログラムのコンパイル方法を示します。

MPI プログラムのコンパイル/リンクは、mpifrt(Fortran)、mpifcc(C)、mpiFCC(C++)を使用

します。mpifrt/mpifcc/mpiFCC は内部的に frt(Fortran)、fcc(C)、C(C++)コンパイラを呼

び出し、利用者がヘッダファイルやライブラリの位置等を意識することなく利用できる環境を提供します。

【Fortran】

$ mpifrt [コンパイルオプション] ソースファイル名

【C】

$ mpifcc [コンパイルオプション] ソースファイル名

【C++】

$ mpiFCC [コンパイルオプション] ソースファイル名

Page 95: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

90

4.1.6.2. MPIプログラム実行

MPIプログラム実行方法に関しては、以下のようにして行います。

【Fortran,C,C++】

$ vi q.sh (以下のコマンドラインを含むシェルスクリプトを作成)

mpiexec –n 4 ./a.out

$ qsub –lP 4 –lp 1 q.sh –q キュー名

4.1.7. エンディアン

SPARC64サーバはビックエンディアンを採用しています。

SPARC64サーバでリトルエンディアンのバイナリデータを読み込む方法

(1)実行時オプション

書式なし入出力文において、異なるエンディアンデータのファイルを入出力する時に指定します。

"-Wl,-T装置番号"を指定した場合は、指定された装置番号に対して有効となります。

例 ./a.out -Wl,T10 装置番号10のエンディアンを変換

(2)エンディアン変換コマンド

エンディアン変換コマンド(/opt/FSUNf90/bin.fcvendian)により、データのエンディアンを

変換することができます。

使用法 fcvendian 入力ファイル 出力ファイル タイプ

タイプに指定できるデータの型を以下に示します。

タイプ 機能

2 2バイトのデータ変換をします。

4 4バイトのデータ変換をします。

8 8バイトのデータ変換をします。

16 16バイトのデータ変換をします。

上記以外 変換されません。

※ データの型が混在するファイルは正しく変換できないことがあります。

Page 96: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

91

4.2. プログラム実行

SPARC64サーバのジョブスケジューラには Parallelnaviの NQSを採用しています。

4.2.1. キュー

表 4.2.1-1 SPARC64サーバでジョブを投入できるキュー一覧(1node)

パラメタ 値 補足(括弧内はデフォルト値)

キュー名 1node

優先度 30 set priority

ジョブクラス 1 set jobclass(0)

実行多重度 4 set run_limit(1)

アクセス制限 なし set unrestricted_access(制限なし)

バッチリクエストに割り当てる仮想ノード数の制限 8 set per_request vnodes_limit(1)

仮想ノードに割り当てるCPU数の制限 4 set per_vnode cpus_limit(1)

CPU割り当てパターンの制限 OFF set cpu_alloc_pattern Restriction

(OFF)

CPU単位の通常ページメモリ量の制限 1.5gb set per_cpu normal_page_memory_limit

(unlimited)

仮想ノードに割り当てる通常ページメモリ量

の制限 unlimited

set per_vnode

normal_page_memory_limit(unlimited)

仮想ノードに割り当てるCPU時間制限 unlimited set per_vnode cpu_limit(unlimited)

仮想ノードに割り当てるメモリ量の設定 cpu set memory_alloc_pattern restriction

(cpu)

経過時間制限 3600(1H) set per_requet elapse limit(unlimited)

コアファイルサイズの制限 0 set per_process corefile_limit(0)

プロセス毎のCPU時間制限 unlimited set per_process cpu_limit(unlimited)

プロセス毎の最大ユーザプロセス数制限 unlimited set per_process

create_processes_limit(unlimited)

プロセス毎のデータセグメントサイズ制限 unlimited set per_process data_limit(unlimited)

プロセス毎のRAM上ロックファイルサイズ制限 unlimited set per_process locked_memory_limit

(unlimited)

プロセス毎の POSIX メッセージキューサイ

ズ制限 unlimited

set per_process message_queue_limit

(unlimited)

プロセス毎のファイルディスクリプタ数制限 8192 set per_process open_files_limit

(1024)

プロセス毎のシグナル数制限 unlimited set per_process pending_signals_limit

(unlimited)

プロセス毎のファイルサイズ制限 unlimited set per_process permfile_limit

(unlimited)

プロセス毎のスタックセグメントサイズ制限 unlimited set per_process stack_limit

(unlimited)

プロセス毎の仮想メモリサイズ制限 unlimited set per_process virtual_memory_limit

(unlimited)

高機能インターコネクトスイッチの利用設定 1 set per_request barrier_limit (1)

実行モードポリシー CHIP_Share set policy execmode cpuchip

(CHIP_Share)

仮想ノード配置ポリシー(ノード) Pack set policy vnodes node(Pack)

仮想ノード配置ポリシー(SB) Pack set policy vnodes sb(Pack)

Page 97: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

92

仮想ノード配置ポリシー(CPU CHIP) Pack set policy vnodes cpuchip(Pack)

実行モードポリシーキューイング制御 on set restriction policy execmode

cpuchip(on)

仮想ノード配置ポリシー(SB)キューイング制御 on set restriction policy vnodes sb(on)

仮想ノード配置ポリシー(SB)キューイング制御 on set restriction policy vnodes cpuchip

(on)

未使用メモリ資源の自動解放 80 set free_memory rate(80)

未使用メモリの自動解放時間 unlimited set free_memory time(unlimited)

チェックポイント採取間隔 unlimited set checkpoint interval(unlimited)

ジョブ凍結可能属性 on set restriction freezable(on)

マイグレート属性 on set restriction migrate(on)

表 4.2.1-2 SPARC64サーバでジョブを投入できるキュー一覧(2node)

パラメタ 値 補足(括弧内はデフォルト値)

キュー名 2node

優先度 20 set priority

ジョブクラス 2 set jobclass(0)

実行多重度 8 set run_limit(1)

アクセス制限 なし set unrestricted_access(制限なし)

バッチリクエストに割り当てる仮想ノード数の

制限 8 set per_request vnodes_limit(1)

仮想ノードに割り当てるCPU数の制限 4 set per_vnode cpus_limit(1)

CPU割り当てパターンの制限 OFF set cpu_alloc_pattern Restriction

(OFF)

CPU単位の通常ページメモリ量の制限 1.5gb set per_cpu normal_page_memory_limit

(unlimited)

仮想ノードに割り当てる通常ページメモリ量

の制限 unlimited

set per_vnode

normal_page_memory_limit(unlimited)

仮想ノードに割り当てるCPU時間制限 unlimited set per_vnode cpu_limit(unlimited)

仮想ノードに割り当てるメモリ量の設定 cpu set memory_alloc_pattern restriction

(cpu)

経過時間制限 43200(12H) set per_requet elapse limit(unlimited)

コアファイルサイズの制限 0 set per_process corefile_limit(0)

プロセス毎のCPU時間制限 unlimited set per_process cpu_limit(unlimited)

プロセス毎の最大ユーザプロセス数制限 unlimited set per_process

create_processes_limit(unlimited)

プロセス毎のデータセグメントサイズ制限 unlimited set per_process data_limit(unlimited)

プロセス毎のRAM上ロックファイルサイズ制限 unlimited set per_process locked_memory_limit

(unlimited)

プロセス毎のPOSIXメッセージキューサイズ制限 unlimited set per_process message_queue_limit

(unlimited)

プロセス毎のファイルディスクリプタ数制限 8192 set per_process open_files_limit

(1024)

プロセス毎のシグナル数制限 unlimited set per_process pending_signals_limit

(unlimited)

プロセス毎のファイルサイズ制限 unlimited set per_process permfile_limit

(unlimited)

プロセス毎のスタックセグメントサイズ制限 unlimited set per_process stack_limit

(unlimited)

プロセス毎の仮想メモリサイズ制限 unlimited set per_process virtual_memory_limit

(unlimited)

Page 98: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

93

高機能インターコネクトスイッチの利用設定 1 set per_request barrier_limit (1)

実行モードポリシー CHIP_Share set policy execmode cpuchip

(CHIP_Share)

仮想ノード配置ポリシー(ノード) Pack set policy vnodes node(Pack)

仮想ノード配置ポリシー(SB) Pack set policy vnodes sb(Pack)

仮想ノード配置ポリシー(CPU CHIP) Pack set policy vnodes cpuchip(Pack)

実行モードポリシーキューイング制御 on set restriction policy execmode

cpuchip(on)

仮想ノード配置ポリシー(SB)キューイング

制御 on set restriction policy vnodes sb(on)

仮想ノード配置ポリシー(SB)キューイング

制御 on

set restriction policy vnodes cpuchip

(on)

未使用メモリ資源の自動解放 80 set free_memory rate(80)

未使用メモリの自動解放時間 unlimited set free_memory time(unlimited)

チェックポイント採取間隔 unlimited set checkpoint interval(unlimited)

ジョブ凍結可能属性 on set restriction freezable(on)

マイグレート属性 on set restriction migrate(on)

Page 99: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

94

4.2.2. ジョブ実行方法

ジョブを実行するには、SPARC64サーバから qsubコマンドを実行します。

4.2.2.1. バッチリクエストの投入

ジョブを実行するために、バッチリクエストを事前に作成する必要があります。qsub コマンドにジョブ

投入スクリプトを指定することで、ジョブがキューイングされ実行されます。

$ /usr/bin/qsub ./run.sh

Request リクエスト ID.クラスタ名 submitted to queue: キュー名.

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

表 4.2.2.1-1 主要オプション(qsub)

オプション 概要

-q キュー名 投入するキューを指定します。

-lP 仮想ノード数

(プロセス数)

仮想ノード数(プロセス数)を指定します。

-lp 仮想ノードあた

りのコア数

仮想ノード(プロセス)あたりのコア数を指定します。

-lm プロセスあたり

のメモリサイズ

プロセスあたりのノーマルメモリサイズを指定します。

単位は、kb,mb,gb。

-ls プロセスあたり

のスタックサイズ

プロセスあたりのスタックサイズを指定します。

単位は、kb,mb,gb。

-cp 経過時間 ジョブの経過時間制限値を指定します。

経過時間は分単位または、HH:MM:SS で指定することができます。

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

-e ファイル名

-eo

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

標準出力と標準エラー出力をまとめる場合には、-eoを使用します。

-oi or –oI 統計情報を標準出力で通知します。-oiはノード情報が含まれます。

-nr 障害発生時のジョブの再実行を禁止します。

-mb

-me

ジョブ実行開始時にメールを送信します。

ジョブ実行終了時にメールを送信します。

-lT CPU時間 プロセスあたりの CPU時間を指定します。

Page 100: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

95

4.2.2.2. ジョブ投入スクリプトの作成

ジョブ投入のためのバッチスクリプトを作成します。

(1) qsubオプション(デフォルト値の指定)

ジョブ投入スクリプトは “#@$” で始まる行に、qsubオプションを指定することで、qsubコマ

ンド実行時の省略値を指定することができます。

(2) qsubオプション解析(ジョブ投入スクリプト)

NQSは、ジョブ投入スクリプトについて、qsubオプションを次の通り解釈します。

(3) 環境変数

qsub コマンド実行時、ジョブ実行時に環境変数が設定されます。設定される主な環境変数を

示します。

表 4.2.2.2-1 環境変数

環境変数 内容

QSUB_WORKDIR 投入されたカレントディレクトリ

QSUB_VNODES 割り当てプロセス数(-lPに指定した値)

QSUB_CPUS 割り当てプロセス当たりの CPU 数(-lpに指定した値)

QSUB_NODEINF バッチリクエストに割り当てたノードリストファイルのパス (MPI

を実行する際の machinefile)

QSUB_REQID ジョブリクエスト識別子

QSUB_BATCHQUEUE バッチキュー名

QSUB_RESTARTINF バッチリクエストの再実行情報(0: 初回実行, 1: 再実行)

Page 101: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

96

4.2.2.3. 逐次ジョブを実行する場合

逐次ジョブ(並列化されていないジョブ)を実行する時に作成するバッチスクリプトの例を示します。

$ vi run.sh

#!/bin/bash

#@$ -q q12

#@$ -lP 1 ……… (1)

#@$ -o stdout …………… (2)

#@$ -e stderr …………… (3)

PATH=/opt/FJSVmpi2/bin:/opt/FJSVpnple/bin:/opt/FSUNf90/bin:$PATH ;

export PATH

LD_LIBRARY_PATH_64=/opt/FJSVmpi2/lib/sparcv9:/opt/FJSVpnple/lib/sparc

v9:/opt/FSUNf90/lib/sparcv9:$LD_LIBRARY_PATH_64 ; export

LD_LIBRARY_PATH_64 …………… (4)

cd $QSUB_WORKDIR …………… (5)

./a.out …………… (6)

(1) ジョブで使用するプロセス数(-lP)を指定します。逐次ジョブの場合、プロセス数は 1となりま

すので、指定値は “–lP 1“ を指定します。

(2) 標準出力ファイルを指定します。

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

(4) 環境変数の設定

(5) ジョブをサブミットしたディレクトリに移動します。

(6) プログラム(a.out)を実行します。

Page 102: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

97

4.2.2.4. スレッド並列ジョブを実行する場合

スレッド並列ジョブを実行する時に作成するバッチスクリプトの例を示します。

$ vi run.sh

#!/bin/bash

#@$ -q normal

#@$ -lp 8 …………… (1)

#@$ -J test_openmp

#@$ -o stdout.%J

#@$ -e stderr.%J

export OMP_NUM_THREADS=8 ……… (2)

export PARALLEL=8

PATH=/opt/FJSVmpi2/bin:/opt/FJSVpnple/bin:/opt/FSUNf90/bin:$PATH ;

export PATH

LD_LIBRARY_PATH_64=/opt/FJSVmpi2/lib/sparcv9:/opt/FJSVpnple/lib/sparcv9

:/opt/FSUNf90/lib/sparcv9:$LD_LIBRARY_PATH_64 ; export

LD_LIBRARY_PATH_64

cd $QSUB_WORKDIR

./a.out …………… (3)

(1) ジョブで使用するスレッド数(コア数)(-lp)を指定します。上記の例では、8 スレッドで実行するた

めに-lp 8を指定しています。

(2) 環境変数 OMP_NUM_THREADS、もしくは PARALLELにスレッド数を指定します。

(3) プログラム(a.out)を実行します。

Page 103: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

98

4.2.2.5. MPIプログラムを実行する場合

プロセス並列、プロセス並列/スレッド並列を組み合わせてジョブを実行する時に作成するバッチス

クリプトの例を示します。

$ vi run.sh

#!/bin/bash

#@$ -q mpi_q

#@$ -o stdout

#@$ -e stderr

PATH=/opt/FJSVmpi2/bin:/opt/FJSVpnple/bin:/opt/FSUNf90/bin:$PATH ; export PATH

LD_LIBRARY_PATH_64=/opt/FJSVmpi2/lib/sparcv9:/opt/FJSVpnple/lib/sparcv9:/opt/

FSUNf90/lib/sparcv9:$LD_LIBRARY_PATH_64 ; export LD_LIBRARY_PATH_64

cd $QSUB_WORKDIR

mpiexec –np 4 ./a.out …………… (1)

(1) プログラム(a.out)を実行します。-npにてプロセス数を指定します。

Page 104: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

99

4.2.3. ジョブの実行状況の確認

ジョブの実行状況を確認する場合には、qstatコマンドを使用します。

4.2.3.1. 実行状況(qstat)

qstatコマンドでは、ジョブの情報(REQUEST NAME、REQUEST ID、USER、PRI、STATE)は、該当

する利用者の情報のみ表示されます。他の利用者情報を含めて表示するには –a オプションを指定し

ます。キュー名を省略するとすべてのキューの情報が表示されます。

$ qstat –a キュー名

キュー名@クラスタ名; type=BATCH; [ENABLED, INACTIVE]; pri=32

0 exit; 0 run; 1 queued; 0 wait; 0 hold; 0 arrive;

REQUEST NAME REQUEST ID USER PRI STATE

1: testjob リクエスト ID.クラスタ名 test 51 RUNNING

…省略…

(1) REQUEST NAME

バッチリクエスト名

(2) REQUEST ID

バッチリクエスト ID

(3) USER

User ID

(4) PRI

ジョブプライオリティ

(5) STATE

ジョブの状態

表 4.2.3.1-1 ジョブ状態(qstatコマンド)

状態 説明

RUNNING ジョブは実行中です。

QUEUED ジョブはキューイング中です。

4.2.3.2. ジョブの途中経過の確認(qcat)

投入してジョブの途中結果はqcatで確認できます。

$ qcat [-o | -e | -s] リクエスト ID

Page 105: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

100

4.2.3.3. キュー制限値(qstat –lx)

各キューに設定されている制限値などを表示するには、qstat –lx を実行します。キュー名を省略

するとすべてのキューの情報が表示されます。

$ qstat –lx キュー名 キュー名@クラスタ名; type=BATCH; [ENABLED, INACTIVE]; pri=32 0 exit; 0 run; 1 queued; 0 wait; 0 hold; 0 arrive; Run_limit = 2048; Groups with access = manager tester Users with access = root Per-cpu large_page_memory limit = 0 bytes Per-cpu normal_page_memory limit = UNLIMITED Per-request elapse limit = UNLIMITED Per-request vnodes limit = 2048 Per-vnode CPU limit = UNLIMITED Per-vnode CPUs limit = 16 Per-vnode large_page_memory limit = 0 bytes Per-vnode normal_page_memory limit = 28913 megabytes Per-process corefile limit = UNLIMITED Per-process CPU limit = UNLIMITED Per-process create_processes limit = UNLIMITED Per-process data limit = UNLIMITED Per-process locked_memory limit = UNLIMITED Per-process message_queue limit = UNLIMITED Per-process open_files limit = 2048 Per-process pending_signals limit = 1024 Per-process permfile limit = UNLIMITED Per-process stack limit = UNLIMITED Per-process virtual_memory limit = UNLIMITED Policy execmode cpuchip = CHIP_SHare, Norestrict Policy vnodes node = PACk, Norestrict Policy vnodes sb = PACk, Norestrict Policy vnodes cpuchip = PACk, Norestrict Cpu_alloc_pattern restriction = OFF Memory_alloc_pattern restriction = VNODE Free_memory rate = 80 Free_memory time = UNLIMITED Checkpoint interval = 3600.000 Jobclass = 10 + Apply non freezable attribute, Norestrict + Apply non migratable attribute, Norestrict

4.2.3.4. ジョブの削除(qdel)

ジョブをキャンセルするには qdel コマンドを実行します。qstat コマンドなどで確認したリクエスト ID

を指定します。

$ qdel リクエスト ID

Request リクエスト ID.クラスタ名 has been deleted.

Page 106: 高性能計算サーバシステム 利用の手引き · 31-01-2014  · リッド並列と京速コンピュータ「京」の産業利用を推進するための様々なプログラミングモデルのスタート

高性能計算サーバシステム 利用の手引き

101

4.2.4. ジョブの実行結果

ジョブの標準出力、及び、標準エラー出力の出力先ファイルは、qsubのオプションで指定します。ジョ

ブの標準出力や標準エラー出力が必要な場合は、下記のオプションを指定してください。

オプション 説明

-o ファイル名

指定したファイルに標準出力を追加書きします。-eや-eoオプション

が指定されていない場合は、標準エラー出力もこのファイルに出力さ

れます。

-e ファイル名 指定したファイルに標準エラー出力を追加書きします。

-eo 標準出力と標準エラー出力をマージします。