Ubuntu14.04 64bit にIntel® Parallel Studio XE 2013 for Linuxのインストール
以前の記事Ubuntu12.04 Intel® Parallel Studio XE 2011 for Linuxのインストール - cmphysの日記だとストレートにインストールできなくなっているので、新たな記事を作りました。
Linux向けの非商用Intel Fortran Compilerのインストール方法です。
FortranとC++の両方のコンパイラを含むIntel® Parallel Studio XE 2013 for Linuxのインストールする手順を紹介しますが、例えばFortranのコンパイラだけのIntel® Fortran Composer XE 2013 for Linuxも同様の手順でインストールできます。
Fortranの場合はifort、C++の場合はiccでコンパイルできます。
準備
まず次のソフトをインストールします。
$ sudo apt-get install build-essential
$ sudo apt-get install gcc-multilib
$ sudo apt-get install rpm
$ sudo apt-get install openjdk-6-jre-headless
参考:Using Intel Compilers for Linux with Ubuntu | Intel® Software
インストール
Qualify for Free Software | Intel® SoftwareからIntel® Parallel Studio XE 2013 for Linuxをダウンロードします。
ダウンロードの際は、メールアドレスの登録が必要です。
登録したメールアドレスに、シリアル番号とダウンロードファイルのURLが送られてきます。
ダウンロードしたファイルはホーム・フォルダに置いておきます。
まず拾ったファイルを解凍(ファイル名は落としたファイルを見てください)。
$ tar xvzf parallel_studio_xe_2013_sp1_update2.tgz
そしたらルート権限に変更してインストール実行。
$ cd parallel_studio_xe_2013_sp1_update2
$ sudo su
# ./install.sh
で、あとは画面の指示に従ってください。
途中で匿名情報をインテルに送信するか聞かれますが、よほど酔狂な人でない限り2のNoを選ぶとよいと思います。
以前は2がデフォルトで設定されていました。
インストールのStep.5で 32-bit libraries not found と言われると思いますが、ia32-libsはUbuntu13.10からリポジトリになくなったので入れられません。
(入れられますけど面倒です)
32bit用のプログラムが作れなくなるだけで、コンパイラの動作になんの影響もないので無視してください。
インストールが完了したら、ホーム・フォルダにある .bashrc を開いて、ファイルの最後に以下の行を追加します。
(インストール先のフォルダは自身で確認してください。)
source /opt/intel/composer_xe_2013_sp1/bin/compilervars.sh intel64
intel64は64bit用のオプションです。32bitの場合は代わりに'ia32'としてください。
これが終わったら、rootから一回ぬけてコマンドラインで再度読み込み
$ source ~/.bashrc
か、もう一回ログインするとOK。
これで毎回コマンドラインから使えるようになります。
$ ifort -v
$ icc -v
でバージョンが表示されたらインストール成功です。
MKLのコンパイルオプション
このコンパイラにはIntel特製のMath Kernel Libraryというのがついてきます。
この中にはLAPACK&BLASも含まれています。
MKLを使う際のコンパイルオプションの付け方は
Intel® Math Kernel Library Link Line Advisor | Intel® Software
から調べることができます。
出てきたlink line, Compiler optionsで$(MKLROOT)となっているところは
/opt/intel/composer_xe_2013_sp1.2.144/mkl
などと置き換えます。
(MKLの入っているフォルダは自身で確認してください。)
最近のバージョンではMKLにBLACSやScaLapackがデフォルトで含まれなくなりました。
オプションで設定できるようですが、どうするかは知りません。