Ubuntu14.04 64bit にIntel® Parallel Studio XE 2013 for Linuxのインストール

以前の記事Ubuntu12.04 Intel® Parallel Studio XE 2011 for Linuxのインストール - cmphysの日記だとストレートにインストールできなくなっているので、新たな記事を作りました。


Linux向けの非商用Intel Fortran Compilerのインストール方法です。
FortranC++の両方のコンパイラを含む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がデフォルトで含まれなくなりました。
オプションで設定できるようですが、どうするかは知りません。