BLOGTIMES
2008/01/03

Intel C++ Compiler(icc) をインストールする

  icc  c  cpp  intel 
このエントリーをはてなブックマークに追加

今さらな感じですが、コンパイラをgccからインテル純正のコンパイラ(Intel C++ Compiler)に変えてみました。gccと比べて最適化されたバイナリを吐いてくれるので、該当するソフトウェアをリコンパイルするだけで多少性能が向上するようです。

インテル ソフトウェア開発製品 - インテル ソフトウェア・ネットワーク

インテルは、非商用ソフトウェアの開発者を対象にした無料の Linux* ツールの拡充を図っています。これらのツールは、余暇を利用して無償のソフトウェアを開発している開発者にのみ提供されます。

有償のプロプライエタリなプロダクトですが、Linux版は個人で非営利の場合には無償で利用できるライセンスが用意されているので、今回はこれを使います。

1. ライセンスキーとダウンロード用のURLを受け取る

早速インストールしていきます。

インテル® C++ コンパイラ Linux* 版のダウンロードからライセンスキーとダウンロード用のURLを受け取る。
※入力したe-mailにライセンスファイルが送られてくるので、正しいe-mailを入力する必要があります。

2. アーカイブをインストール先のホストに展開してインストールする

# cd /tmp # wget http://example.com/path/to/l_cc_p_10.1.008.tar.gz # tar zxvf l_cc_p_10.1.008.tar.gz # cd l_cc_p_10.1.008 # ./install

インストール中にライセンスキーの場所もしくは、ライセンス番号を聞かれます。

3. 環境変数が自動的に設定されるようにする

iccは/opt/intel/cc/10.1.008/bin/にインストールされましたが、iccを使ったり、iccでコンパイルされたバイナリを動かすにはここにpathを通したり、必要な環境変数を設定してあげる必要があります。iccにはこれをやってくれるシェルスクリプト(iccvars.sh/iccvars.csh)が付属しています。

コンパイルのたびに

# source /opt/intel/cc/10.1.008/bin/iccvars.sh

とやるのはちょっと面倒なので、profileから自動的に読み込まれるようにしておきます。

RedHat系の場合は下記で大丈夫なはずです。

# cd /etc/profile.d # ln -s /opt/intel/cc/10.1.008/bin/iccvars.* .

さらに、libimf.soが見つからないと言われないようにld.soにpathを通しておきます。

# echo "/opt/intel/cc/10.1.008/lib" > /etc/ld.so.conf.d/icc.conf # ldconfig

コンパイル時にかなりWarningが出るけど・・・・

ためしにApacheとPHPをリコンパイルしてみましたが、かなりたくさんWarningが出るのでちょっと驚きます。でも、問題なく動作はするようです。


    トラックバックについて
    Trackback URL:
    お気軽にどうぞ。トラックバック前にポリシーをお読みください。[policy]
    このエントリへのTrackbackにはこのURLが必要です→https://blog.cles.jp/item/2356
    Trackbacks
    このエントリにトラックバックはありません
    Comments
    愛のあるツッコミをお気軽にどうぞ。[policy]
    古いエントリについてはコメント制御しているため、即時に反映されないことがあります。
    コメントはありません
    Comments Form

    コメントは承認後の表示となります。
    OpenIDでログインすると、即時に公開されます。

    OpenID を使ってログインすることができます。

    Identity URL: Yahoo! JAPAN IDでログイン