5.3. C-SSL II ライブラリ¶
C-SSL II ライブラリは、Fortran言語で利用されているSSL II の豊富なサブルーチン群のサブセットに対してC言語のためのインターフェースルーチンを提供し、C言語/C++言語で利用できるようにしています。
線形計算
固有値固有ベクトル
非線形計算
極値問題
補間、近似
変換
数値微積分
微分方程式
特殊関数
擬似乱数
補助ルーチン
5.3.1. C言語コンパイル方法¶
-SSL2
、または、-SSL2BLAMP
オプションを指定します。-SSL2MPI
オプションを指定し、同時に-SSL2
、または、-SSL2BLAMP
を指定してください。コンパイル例は以下のとおりです。
MPI/自動並列/SSL II(主にマルチノードジョブ)
[_LNlogin]$ mpifccpx -Kfast,parallel,SVE sample.c -SSL2MPI -SSL2
MPI/OpenMP/SSL II(主にマルチノードジョブ)
[_LNlogin]$ mpifccpx -Kfast,parallel,openmp,SVE sample.c -SSL2MPI -SSL2
逐次/SSL II(シングルノードジョブ)
[_LNlogin]$ fccpx -Kfast,SVE sample.c -SSL2
自動並列/SSL II(シングルノードジョブ)
[_LNlogin]$ fccpx -Kfast,parallel,SVE sample.c -SSL2
OpenMP/SSL II(シングルノードジョブ)
[_LNlogin]$ fccpx -Kfast,openmp,SVE sample.c -SSL2
参考
ログインノードで結合する場合、
-KSVE
が有効であれば、SVE
を使用したライブラリを結合します。ログインノードで結合する場合、
-KNOSVE
が有効であれば、汎用のライブラリを結合します。計算ノードで結合する場合、
-KSVE
と-KNOSVE
のどちらを指定してもSVE
を使用したライブラリを結合します。-KSVE
オプションのデフォルト(省略時)は、-KSVE
になります。ネイティブコンパイラでプログラムを翻訳し、C-SSL II を結合する場合、fccコマンドを使用します。
ネイティブコンパイラでMPIプログラムを翻訳し、SSL II/MPI を結合する場合、mpifccコマンドを使用します。
5.3.2. サンプルプログラム(C-SSL II/C)¶
サンプルプログラムを使用して、コンパイルからジョブ実行までの例を示します。
サンプルプログラムをコンパイルします。
[_LNlogin]$ fccpx -V -Kfast,optmsg=2 -Nlst=t -o sample_C-SSLII-C sample_C-SSLII-C.c -SSL2
- ジョブスクリプトを用意します。ジョブスクリプトのサンプルは
/home/system/sample/CSSL2/sample_C-SSLII-C.sh
として用意しています。 pjsubコマンドでジョブを投入します。
[_LNlogin]$ pjsub sample_C-SSLII-C.sh [INFO] PJM 0000 pjsub Job 138 submitted.
5.3.3. C++コンパイル方法¶
-SSL2
、または、-SSL2BLAMP
オプションを指定します。-SSL2MPI
オプションを指定し、同時に-SSL2
、または、-SSL2BLAMP
を指定してください。コンパイル例は以下のとおりです。
MPI/自動並列/SSL II(主にマルチノードジョブ)
[_LNlogin]$ mpiFCCpx -Kfast,parallel,SVE sample.cc -SSL2MPI -SSL2
MPI/OpenMP/SSL II(主にマルチノードジョブ)
[_LNlogin]$ mpiFCCpx -Kfast,parallel,openmp,SVE sample.cc -SSL2MPI -SSL2
逐次/SSL II(シングルノードジョブ)
[_LNlogin]$ FCCpx -Kfast,SVE sample.cc -SSL2
自動並列/SSL II(シングルノードジョブ)
[_LNlogin]$ FCCpx -Kfast,parallel,SVE sample.cc -SSL2
OpenMP/SSL II(シングルノードジョブ)
[_LNlogin]$ FCCpx -Kfast,openmp,SVE sample.cc -SSL2
参考
ログインノードで結合する場合、
-KSVE
が有効であれば、SVE
を使用したライブラリを結合します。ログインノードで結合する場合、
-KNOSVE
が有効であれば、汎用のライブラリを結合します。計算ノードで結合する場合、
-KSVE
と-KNOSVE
のどちらを指定してもSVE
を使用したライブラリを結合します。-KSVE
オプションのデフォルト(省略時)は、-KSVE
になります。ネイティブコンパイラでプログラムを翻訳し、C-SSL II を結合する場合、FCCコマンドを使用します。
ネイティブコンパイラでMPIプログラムを翻訳し、SSL II/MPI を結合する場合、mpiFCCコマンドを使用します。