intel complerが無償で使えるそうな
https://software.intel.com/content/www/us/en/develop/articles/free-intel-software-developer-tools.html

ドキュメントを読むと商用でも使えるそうな.
https://www.intel.co.jp/content/www/jp/ja/software/oneapi-commercial-faq.html
icc

入手方法

何を入手したいのかで分岐点が1つ。ここでは下記2つのToolkitを取得しました

  • 「Intel® oneAPI Base Toolkit」
    基本キットで下記コンポーネントが選べる
    Intel oneAPI Threading Buildding Blocks
    「Intel DPC++ Complatibility Tool」
    「Intel oneAPI DPC++/C++ Compiler」
    Intel oneAPI Math Kernel Libary
  • 「Intel® oneAPI HPC Toolkit」
    「Base Toolkit」のアドオンで下記コンポーネントが選べる
    Intel MPI Library
    「Intel Cluster Checker」
    「Intel Fortran Compiler(Beta) & Intel Fortran Compiler Classic」
    Intel oneAPI DPC++/C++ Compiler & Intel C++ Compiler Classic

*「Base Toolkit」の「Intel oneAPI DPC++/C++ Compiler」はllvmベースの新規のコンパイラ(icx/icpx)で、従来のicc/icpcは「HPC Toolkit」の「Intel oneAPI DPC++/C++ Compiler & Intel C++ Compiler Classic」パッケージに含まれている. なのである意味「HPC Toolkit」があれば十分なのかも. ただ「Intel oneAPI Math Kernel Libary」と「Intel oneAPI Threading Buildding Blocks」を使いたいなら「Base Toolkit」を入れるしかない.

*「Intel oneAPI DPC++/C++ Compiler」のllvmベースicx/icpxコンパイラでopenmpi-4.1.1をコンパイルすると途中で止まる....

インストール方法ですが、

  • 「yum/dnfでインストールする」
  • 「インストーラーを入手して実行」

とか選べる. 複数の計算機に入れるなら後者が楽かな。

yumだとネットワーク負荷が高まるので. ウェブキャッシュサーバがあれば別なのでしょうけど

ここでは上記URLを辿って「Base Toolkit」と「HPC Toolkit」のインストーラーを取得してみた

  • l_BaseKit_p_2021.3.0.3219_offline.sh(3.4GB)
  • l_HPCKit_p_2021.3.0.3230_offline.sh(1.3G)

インストール

[root@c ~]# bash /opt/src/l_BaseKit_p_2021.3.0.3219_offline.sh
 :

Xが有効なら暫くするとGUIが立ち上がります. もしX環境でないのならCUIで操作可能な画面が表示されます
2021y09m16d_235031918.png
「Accept & customize installtion」を選びます。
コンポーネントを選ぶ画面になりますが、
「Intel oneAPI Threading Building Blocks」
「IntelR oneAPI Math Kernel Library」
のみを有効にして「Next」を選びます. 以降は既定のままで、あとIntel様へお伝えするかとかありますが、ご自由に.

次に「HPC Toolkit」
はなっからCUIで起動するなら「-a -c」を引数として付けて起動させる

[root@c ~]# bash /opt/src/l_HPCKit_p_2021.3.0.3230_offline.sh -a -c

ここでも「Accept & customize installtion」を選びます。
選ぶコンポーネントは
「Intel MPI Library」
「Intel Cluster Checker」
「Intel Fortran Compiler (Beta) & IntelR Fortran Compiler Classic」
「Intel oneAPI DPC++/C++ Compiler & IntelR C++ Compiler Classic」
とします
2021y09m19d_180005822.png
以降は既定のままで、あとIntel様へお伝えするかとかありますが、これもご自由に.

つかう

環境設定を行います
単純に「source /opt/intel/oneapi/setvars.sh」と実行すればPATH環境設定らが有効になる

[illya@c ~]$ source /opt/intel/oneapi/setvars.sh
 
:: initializing oneAPI environment ...
   -bash: BASH_VERSION = 4.4.19(1)-release
:: clck -- latest
:: compiler -- latest
:: debugger -- latest
:: dev-utilities -- latest
:: mkl -- latest
:: mpi -- latest
:: tbb -- latest
:: oneAPI environment initialized ::
 
[illya@c ~]$

PATH環境変数は先頭に下記が加わる

/opt/intel/oneapi/mpi/2021.3.0//libfabric/bin
/opt/intel/oneapi/mpi/2021.3.0//bin
/opt/intel/oneapi/mkl/2021.3.0/bin/intel64
/opt/intel/oneapi/dev-utilities/2021.3.0/bin
/opt/intel/oneapi/debugger/10.1.2/gdb/intel64/bin
/opt/intel/oneapi/compiler/2021.3.0/linux/lib/oclfpga/llvm/aocl-bin
/opt/intel/oneapi/compiler/2021.3.0/linux/lib/oclfpga/bin
/opt/intel/oneapi/compiler/2021.3.0/linux/bin/intel64
/opt/intel/oneapi/compiler/2021.3.0/linux/bin
/opt/intel/oneapi/clck/2021.3.0/bin/intel64

これでintel謹製mpiicc/mpiicpcが使えますが、openmpiをコンパイルしてみます

[root@s ~]# cd /apps/src/
[root@s src]# tar xf openmpi-4.1.1.tar.bz2
[root@s src]# cd openmpi-4.1.1/
[root@s openmpi-4.1.1]# source /opt/intel/oneapi/setvars.sh
 
:: initializing oneAPI environment ...
   -bash: BASH_VERSION = 4.2.46(2)-release
:: compiler -- latest
:: debugger -- latest
:: dev-utilities -- latest
:: mkl -- latest
:: mpi -- latest
:: tbb -- latest
:: oneAPI environment initialized ::
 
[root@s openmpi-4.1.1]# CC=icc CXX=icpc FC=ifort ./configure --with-tm=/opt/pbs --without-verbs --prefix=/apps/openmpi-4.1.1_icc-2021.3.0
 
[root@s openmpi-4.1.1]# make -j 8
[root@s openmpi-4.1.1]# make check
[root@s openmpi-4.1.1]# make install

EnvironmentModules

oneAPIでは簡単にEnvironmentModules対応が用意されているみたい.

[root@s ~]# /opt/intel/oneapi/modulefiles-setup.sh --ignore-latest --output-dir=/etc/modulefiles
[root@s ~]#

作られるmodulefilesは「environment-modules-v4.1」対応で CentOS7 のyumで導入される「environment-modules」は3.2.10なので使えないみたい


トップ   編集 添付 複製 名前変更     ヘルプ   最終更新のRSS
Last-modified: 2021-09-30 (木) 02:18:27 (20d)