NAG Parallel Library, Release 3
FDL6I03DCL - License Managed
Intel EM64T, Linux64, Intel Fortran, Intel MPI
ユーザーノート内容
1. イントロダクション .......................................................

1

2. 一般情報 ................................................................

2

2.1. MPI .................................................................

2

2.2. ライブラリへのアクセス ...............................................

2

2.3. NAG Parallel Library プログラムの実行 ................................

4

2.4. Example プログラム .................................................... 4
2.5. ユーザードキュメント .................................................. 4
3. ルーチン固有の情報 ........................................................ 5
4. ドキュメント ............................................................. 6
5. サポート ................................................................. 6
6. コンタクト情報 ........................................................... 6

1. イントロダクション
本ユーザーノートは，NAG Parallel Library, Release 3 - FDL6I03DCL（ライブラリ）のご利用方法（リンク方法）を説明します．
本ユーザーノートには，NAG Parallel Library Manual（ライブラリマニュアル）には含
まれない製品毎の情報が含まれています．ライブラリマニュアルに「ユーザーノート参照」などと書かれている場合は，本ユーザーノートをご参照ください．
ライブラリルーチンのご利用にあたり，以下のドキュメントを必ずお読みください．
(a) Essential Introduction （ライブラリについての基本的なドキュメント）(b) Chapter Introduction（チャプター毎のドキュメント）(c) Routine Document（ルーチン毎のドキュメント）(d) Users' Note

（ユーザーノート）

項目 (a), (b), (c) はライブラリマニュアルに含まれています．ライブラリマニュアルは PDF 形式で提供されます．項目 (d) は本ユーザーノートです．本ユーザーノートの英語版は HTML 形式で提供されます．

1

2. 一般情報
2.1. MPI
NAG Parallel Library を利用する並列プログラムは，MPI（Intel(R) MPI Library forLinux）を必要とします．mpirun(1) コマンドを用いて，Linux Intel64 環境で並列プログラムを実行します．
2.2. ライブラリへのアクセス
コンパイル／リンク／並列実行がすべて正常に行われるためには，環境変数 PATH および
LD_LIBRARY_PATH が正しく設定されている事が重要です．Intel ソフトウェアと共に提供されるスクリプトでこれを行うことが最も良い方法です．インストールされるソフトウ
ェアのバージョンおよびシェルの種類に依って詳細は異なります．一例として，NAG Ltd
でのインストール環境（コンパイラのバージョン 11.0，MPI ライブラリのバージョン 3.2，
MKL ライブラリのバージョン 10.1）
での bash シェルスクリプトの実行を以下に示します．
. /opt/intel/Compiler/11.0/069/bin/ifortvars.sh intel64. /opt/intel/Compiler/11.0/069/bin/iccvars.sh intel64. /opt/intel/impi/3.2.0.011_em64/bin64/mpivars.sh. /opt/intel/10.1.1.019/tools/environment/mklvarsem64t.sh
上記のスクリプトはシェルスタートアップファイル（bash シェルでは .bashrc）に記述されることが推奨されます．C シェル用のスクリプトも提供されています．
以下では，NAG Parallel Library が /opt/fdl6i03dcl にインストールされていることを前提とします．
（Intel MKL ライブラリと共に）NAG Parallel Library を以下の様にリンクしてください．
（ここで driver.f がユーザープログラムです．
）
mpiifort driver.f /opt/fdl6i03dcl/libnagmpi.a /opt/fdl6i03dcl/libnagmpisup.a \-Wl,--start-group \/opt/fdl6i03dcl/mkl_em64t/lib/em64t/libmkl_blacs_intelmpi_lp64.a \/opt/fdl6i03dcl/mkl_em64t/lib/em64t/libmkl_intel_lp64.a \/opt/fdl6i03dcl/mkl_em64t/lib/em64t/libmkl_sequential.a \/opt/fdl6i03dcl/mkl_em64t/lib/em64t/libmkl_core.a -static_mpi -Wl,--end-group2

スタティックライブラリの代わりに共有ライブラリ libnagmpi.so libnagmpisup.so を利用する場合は，環境変数 LD_LIBRARY_PATH に共有ライブラリのパスを設定してください．
上記のコマンドは，本製品で提供される Intel MKL ライブラリを（スタティックにリンクして）使用しています．本製品で提供されるものとは別の MKL を使用する場合は，それに合わせて libmkl* ライブラリの格納場所（パス）を変更してください．
例えば，以下の場所に自前の MKL をインストールしている場合，/opt/intel/compilers_and_libraries_2016.3.210/linux/mkl/lib/intel64
上記のコマンドの/opt/fdl6i03dcl/mkl_em64t/lib/em64t
を/opt/intel/compilers_and_libraries_2016.3.210/linux/mkl/lib/intel64に置き換えてください．
また，nagsmpiexample スクリプト
fdl6i03dcl/scripts/nagmpiexampleを利用する場合は，スクリプトの内容を同様に変更してください．

32.3. NAG Parallel Library プログラムの実行
NAG Parallel Library を利用するプログラムの複数ノードでの実行は，mpirun コマンドを使用してください．
例）
mpirun -n 4 a.out
この例では，実行プログラム a.out を４つのプロセッサで実行するようにシステムに指示します．mpirun(1) の詳細は，Intel MPI Library for Linux OS Reference Manual をご参照ください．
2.4. Example プログラム
Example プログラムは本ライブラリが想定する動作環境に適した状態で提供されます．そのため，ライブラリマニュアルに記載／提供されている Example プログラムに比べて，その内容が若干異なる場合があります．
スクリプト nagmpiexample を用いて Example プログラムを簡単に利用する事ができます．
このスクリプトは Example プログラムのソースファイルとデータファイルをカレントディレクトリにコピーし，コンパイル／リンク／実行を行います．ご利用の NAG ライブラ
リルーチンの名前をスクリプトの引数に指定してください．
例）nagmpiexample f04ebfp
この例では，F04EBFP ルーチンの Example プログラムを実行します．ほとんど全てのExample プログラムは，４つのプロセスを持っています．もし，このスクリプトの内容を変更する場合は，Intel MPI Library for Linux OS Reference Manual の第２章の情報が役に立つかもしれません（並列ジョブを開始するコマンドの使い方が説明されています）．
2.5. ユーザードキュメント
以下のドキュメントが doc ディレクトリに提供されます．


un.html - ユーザーノート（本ユーザーノートの英語版）

その他のドキュメントについては「4. ドキュメント」をご参照ください．

4

3. ルーチン固有の情報
本ライブラリルーチン固有の情報を（チャプター毎に）以下に示します．
a. X02ライブラリマニュアルで参照される定数は，本ライブラリでは以下の値を持ちます．
マシン定数は以下のとおりです．
浮動小数点演算の基本的なパラメーター：
X02BHF =2

X02BJF =53

X02BKF = -1021
X02BLF = 1024
X02DJF = .TRUE.
浮動小数点演算の派生的なパラメーター：
X02AJF = 1.111307226797642D-16
X02AKF = 2.225073858507201D-308
X02ALF = 1.797693134862316D+308
X02AMF = 2.225073858507201D-308
X02ANF = 2.225073858507201D-30
コンピューター環境のその他のパラメーター：
X02AHF = 1.427247692705960D+045
X02BBF = 2147483647
X02BEF = 15
X02DAF = .FALSE.

54. ドキュメント
本製品には PDF 形式のライブラリマニュアルが付属しています．
5. サポート
製品のご利用に関してご質問等がございましたら，電子メールにて「日本 NAG ヘルプデスク」までお問い合わせください．その際，ご利用の製品の製品コード（FDL6I03DCL）とお客様の User ID をご明記いただきますようお願い致します．ご返答は平日 9：30～
12:00，13:00～17:30 に行わせていただきます．何卒よろしくお願い致します．
日本 NAG ヘルプデスク
Email: naghelp@nag-j.co.jp
6. コンタクト情報
日本ニューメリカルアルゴリズムズグループ株式会社（日本 NAG）
〒104-0032
東京都中央区八丁堀 4-9-9 八丁堀フロンティアビル 2F
Email: sales@nag-j.co.jp
Tel:03-5542-6311

Fax:

03-5542-6312

NAG のウェブサイトでは製品およびサービスに関する情報を定期的に更新しています．
http://www.nag-j.co.jp/ （日本）
http://www.nag.co.uk/（英国本社）

http://www.nag.com/（米国）6