| バージョン | モジュールファイル名 | システムA | システムB/C | システムG | クラウドシステム | 備考 |
|---|---|---|---|---|---|---|
| 2025.3 | intel/2025.3 | + | + | + | + | 2026年4月導入. Intelコンパイラ + MKL + TBB |
| 2025.0 | intel/2025.0 | + | + | + | + | 2025年4月導入. Intelコンパイラ + MKL + TBB |
| 2023.4 | intel/2024.0 | + | + | + | + | 2024年4月導入. Intelコンパイラ + MKL + TBB |
| 2023.2 (default) | intel/2023.2 | + | + | + | + | 2024年4月導入. Intelコンパイラ + MKL + TBB |
| 2023.2-rt | intel/2023.1-rt | + | + | + | + | 2024年4月導入. ランタイムライブラリ |
| 2023.1 | intel/2023.1 | + | + | + | + | 2023年8月導入. Intelコンパイラ + MKL + TBB |
| 2023.1-rt | intel/2023.1-rt | + | + | + | + | 2023年8月導入. ランタイムライブラリ |
| 2022.3 | intel/2022.3 | + | + | + | + | 2022年11月導入. Intelコンパイラ + MKL + TBB |
| 2022.3-rt | intel/2022.3-rt | + | + | + | + | 2022年11月導入. ランタイムライブラリ |
注:Intelコンパイラの個別のバージョンではなく、Intel OneAPI の包括的なバージョンで記載しています。
+ : すべてのユーザが利用可能
- : 利用不可
システムA、B、C、クラウドでは、システムにログインした時点で、Intelコンパイラがデフォルトで設定されています。システムG は、動作検証をしていません。
$ module list
Currently Loaded Modulefiles:
x) slurm x) SysB/2022 x) intel/2023.2(default) x) intelmpi/2023.2(default) x) PrgEnvIntel/2023(default)
コンパイラのバージョンは、上表に記載のデフォルトのバージョンが設定されています。 Intelコンパイラのバージョンを切り替えたい場合は、PrgEnvIntel ごと切り替える必要があります。 以下のようにmoduleコマンドを実行してください。
$ module switch PrgEnvIntel/2023 PrgEnvIntel/2025
ログイン時に自動で環境設定を行いたい場合は、ログインシェルの起動ファイルに必要なmoduleコマンドを記述してください。詳細は 環境設定 をご覧ください。 moduleコマンドの詳細は Modules をご覧ください。
| 言語 | コマンド | 実行形式 |
|---|---|---|
| C | icx | icx [オプション] ファイル名 |
| C++ | icpx | icpx [オプション] ファイル名 |
| Fortran | ifx | ifx [オプション] ファイル名 |
| オプション名 | 説明 |
|---|---|
| -o FILENAME | オブジェクトファイルの名前を指定します。 |
| -mcmodel=medium | 2Gbyteを超えてメモリを利用できるようになります。 ※SYCLでは使用できません。 |
| -fpic | 位置に依存しないコードを生成します。 |
| -fiopenmp (-qopenmp) |
OpenMP指示子を有効にしてコンパイルします。 |
| -qmkl | MKLライブラリをリンクします。 |
| -O0/-O1/-O2/-O3 | 最適化のレベルを指定します(デフォルトは-O2)。 |
| -fast | プログラムの実行速度が最大になるように最適化します。 -fast オプションにより、次のオプションが付与されます。 -ipo, -O3, -static, -fp-model fast=2 |
| -flto (-ipo) |
複数ファイル間で、手続き間の処理を最適化します。 |
| -qopt-report | 最適化レポートを作成します。 |
| -qopt-report-phase | 最適化レポートで出力する項目を指定します。 |
| -xHost | コンパイルするホスト上のプロセッサで利用可能なコードを生成します。 |
| -xCORE-AVX512 -xSAPPHIRERAPIDS |
Intelプロセッサ向けに、指定した命令セットに対応した最適化コードを生成します。 |
| -fsycl | SYCLプログラムとしてコンパイルします。 |
| -shared-intel | インテルが提供するライブラリをすべて動的にリンクします。 |
| -static-intel | インテルが提供するライブラリを静的にリンクします。 静的にリンクすることで、プログラム起動時の動的ライブラリ探索の負荷を下げる効果があります。 |
$ icx test.c # C言語の例
$ icpx test.cpp # C++の例
$ ifx test.f90 # Fortranの例
$ tssrun ./a.out # 実行
OpenMPは、プログラムの並列化のためのオープン規格です。 ソースコードに#pragma ompで始まる指示を書き込み、所定のオプションをつけてコンパイルすると、コンパイラに並列化を行わせることができます。
OpenMPへの指示を書き込んだソースコードをコンパイルするには、-fiopenmpオプションをつけます。
$ icx -fiopenmp test.c
コンパイルしたプログラムを実行する際、--rscオプションでtとcに並列数を指定すると、その並列数でプログラムが実行されます。
$ tssrun --rsc p=1:t=8:c=8 ./a.out # 並列数8を指定して実行
Intel コンパイラは、プログラムの誤りや通知すべき情報があるときに、以下に示す形式でメッセージを出力します。
ファイル名:行番号 : XXX : YYY : メッセージ本文
ソースコードの該当行の内容
^Fortranコンパイラ
ファイル名(行番号): XXX #YYY: メッセージ本文
ソースコードの該当行の内容
--------------^
出力例
main.c:8:3: error: use of undeclared identifier 'nt'
nt nthreads;
^sample.f90(26): error #5560: Subscript #2 of the array C has value 20 which is greater than the upper bound of 2
print *, c(1,1),",", c(1,20)
-----------------------^
compilation aborted for sample.f90 (code 1)Intel MPIライブラリが利用できます。MPIプログラムのコンパイル、リンク、実行方法については、Intel MPIライブラリ をご覧ください。
Intelコンパイラを利用する場合、以下の数値計算ライブラリを利用できます。各ライブラリの利用方法については、個別のページをご覧ください。
| ライブラリ | システムA | システムB/C | システムG | クラウド |
|---|---|---|---|---|
| MKLライブラリ | + | + | - | + |
+ : すべてのユーザが利用可能
AU : 学術研究機関限定で利用可能
- : 利用不可