1read 100read
2011年10月1期Linuxintel compiler for Linux part2 TOP カテ一覧 スレ一覧 削除依頼
・ 次のスレ
Linuxを再インストールしたら上げるスレ
Superπベンチスレ(自作PC板別館) 1回目のループ
ドラえもん 〜のびたのLinux奮闘記〜
オープンソースはすべてのセキュリティ原則に反する


intel compiler for Linux part2


1 :04/07/26 〜 最終レス :11/02/06
intel 社の Web ページ
URL:<http://developer.intel.com/software/products/eval/>
の、"Non-Commercial Unsupported Software(非商用、サポート無し)" から、
RedHat系Linux 6.2 または 7.1 に対応した IA-32 や IA-64向きの
最適化C++,Fortran9x用のコンパイラ(version 5.0.1) が無料で
ダウンロードできるようになっています。
(詳しいライセンス条件は、ダウンロード時に表示される文書を
参照してください。)
intel 自身が作ってますので、インテル系のCPUの資源を活用できる
実行ファイルが生成されるます。(AMD の Athlon も Pentium III と
みなしてコンパイルオプションを選べばMMX機能などを使うことが可能です。)
以下は、「無料永続版」を入手した後で、それを実際に使えるようにする
ための設定方法の記述です。
C++ と fortran9x を両方ともインストールする例を書いていますが、
どちらかだけしか必要ない場合は、片方を省略することができます。
例は RedHat6.2 系統向けになっていますが、7.x 向けの場合でも大体同様です。
(Web ページからダウンロードしてくるファイルが違うだけです。)
ダウンロードする際に入力したメールアドレスにインストール時に必要となる
ライセンスキー情報が送られてきます。
前スレ
intel compiler for Linux
http://pc5.2ch.net/test/read.cgi/linux/1007024009/

2 :
使ってみたいけどめんどいからいいや。

3 :
即死防止age
FreeBSD-users-jpでIntel Compilerが話題になってるけど、実際のところFreeBSDで使ってる人いるの?

4 :
自己レスだが
前スレ見たら使ってる人はいるみたい。

5 :
評価用のソフトのダウンロードURLは、現在では以下のものになっています。
C++やF90はバージョン7.1系列のものと、8.0系列のものがあります。
LINUXの場合には非商用用途非サポート版が無料でダウンロードできます。
http://developer.intel.com/software/products/global/eval.htm

6 :
Opteron + Fedora core1 x86_64 の環境でIntel Fortran最新版を入れました。
しかし、コンパイル(というかリンク)ができません。
# ifort test.f
ld: cannot open /usr/lib/crt1.o: そのようなファイルやディレクトリはありません
# locate crt1.o
/usr/lib64/Mcrt1.o
/usr/lib64/Scrt1.o
/usr/lib64/crt1.o
/usr/lib64/gcrt1.o
ldが/usr/lib を見に行ってしまっているようですが、どう対処したらよいのでしょうか?
過去ログにあった、-Xlinker -melf_i386をオプションでつけてもだめでした。
g77では、32bitモードでも64bitモードでもコンパイル&実行できるのですが。
googleでも調べたのですが、英語サイトでも事例が見つけられませんでした。
諸先生方 教えてくださいませ。

7 :
LD_LIBRARY_PATH ?

8 :
-# ってオプションをつけて実行されてはいかがでしょう?

9 :
>7
LD_LIBRARY_PATH=/opt/intel_fc_80/lib:/usr/X11R6/lib:/usr/X11R6/lib64/modules
となっています。

10 :
>8
実行してみました。
$ ifort -# test.f
/opt/intel_fc_80/bin/fortcom \
-D__INTEL_COMPILER=800 \
-D__ELF__ \
-D__unix__ \
-D__unix \
-D__linux__ \
-D__linux \
-D__gnu_linux__ \
-Dunix \
-Dlinux \
-D__i386 \
-D__i386__ \
-Di386 \
-mGLOB_pack_sort_init_list \
-I. \
-I/opt/intel_fc_80/include \
-I/opt/intel_fc_80/include \
-I/opt/intel_fc_80/substitute_headers \
-I/usr/include \
-O2 \
-mP1OPT_version=800 \
-mGLOB_source_language=GLOB_SOURCE_LANGUAGE_F90 \
-mGLOB_tune_for_fort \
-mGLOB_use_fort_dope_vector \
-mP2OPT_static_promotion \
-mP1OPT_print_version=FALSE \
-mP3OPT_use_mspp_call_convention \
-mCG_use_gas_got_workaround=F \

11 :
続きです。
-mP2OPT_align_option_used=TRUE \
"-mGLOB_options_string=-I/opt/intel_fc_80/include -#" \
-mGLOB_cxx_limited_range=FALSE \
-mGLOB_as_output_backup_file_name=/tmp/ifortcOunm1as_ \
-mGLOB_machine_model=GLOB_MACHINE_MODEL_IA32_NONE \
-mP2OPT_subs_out_of_bound=FALSE \
-mGLOB_opt_level=2 \
-mIPOPT_obj_output_file_name=/tmp/ifort8cNGPt.o \
-mP3OPT_asm_target=P3OPT_ASM_TARGET_GAS \
-mGLOB_obj_output_file=/tmp/ifort8cNGPt.o \
-mP1OPT_source_file_name=test.f \
test.f
ld \
/usr/lib/crt1.o \
/usr/lib/crti.o \
/opt/intel_fc_80/lib/crtxi.o \
-dynamic-linker \
/lib/ld-linux.so.2 \
-m \
elf_i386 \
-o \
a.out \
/opt/intel_fc_80/lib/for_main.o \
/tmp/ifort8cNGPt.o \
-Qy \
-L/opt/intel_fc_80/lib \
-L/usr/lib \

12 :
続きです。
-Bstatic \
-lifport \
-lifcoremt \
-limf \
-Bdynamic \
-lm \
-lcxa \
-lunwind \
-lpthread \
-Bstatic \
-lirc \
-Bdynamic \
-lc \
-Bstatic \
-lirc \
/opt/intel_fc_80/lib/crtxn.o \
/usr/lib/crtn.o
rm /tmp/ifortntsVAKgas
rm /tmp/ifortcOunm1as_
rm /tmp/ifort0bQR7harg
rm /tmp/ifort8cNGPt.o
よろしくお願いいたします。

13 :
ifortってスクリプトです. 中の EFI2... を自分の環境にあわせればいいのでは?
標準ではRedHatになっていたと思います.

14 :
>>6
スレ違いだけど、Opteron なら PathScale の方が良くない?

15 :
>13
もう少し、詳しく教えてください。
>14
PathScaleは、無料で手に入るのでしょうか?

16 :
>6
/opt/intel_fc_80/bin/fortcom ってなってますが, これ32bit版じゃ?
64bit版だと/opt/intel_fce_80/bin/fortcom になると思うんですが…

17 :
>16
32bit用のIntelコンパイラをinstallしました。。。
Intelコンパイラの64bitって、Opteron互換ではなくて、
Itanium系専用ではないのですか?

18 :
>>17
EMT64サポートじゃないとね。
でもプレミアには出てこない...
どこにあるのか教えて > エライ人
Opteronで試してみて良い結果なら
プレスコ64を絶対に買いますから。

19 :
> 18
2004/07/16 付けで
Intel(R) C++ Compiler 8.1, Linux*,
Extended Memory 64 Technology Edition product Release
って出てましたよ premier に. もしかするとbetaテストで登録されて
ないとだめかもしれません

20 :
うーん、非商用フリーで登録してると出てこないのかな。
非商用有償のライセンス持ってる人がいるので聞いてみようっと

21 :
IntelのEarly Access Programに登録しないと出てこないのかな?

22 :
インテルにしてみれば、敵であるAMDには塩を送りたく無いはず。
可能性としては、インテルEM64T用のバイナリがそのままAMD64で
動いたり、あるいは拡張命令が使われている場合でも、アセンブラ
とかオブジェクトファイルにパッチをあてるスクリプトのような
ものをかませれば、AMD64用のコンパイラが出来てしまい兼ねないから、
金を払った客以外には無料で配らないのかな?
そのうちLINUX用の無料コンパイラも、リリースされなくなるかも
しれないね。既にMKLライブラリが(昔はLINUX用は自由にダウンロード
できたのに)今では金を出さないと、正式には使えないようになって
しまっているから。(期間限定のお試し利用は出来ても)

23 :
IA32のバイナリはAMDで走るので、64でもあまり気にしないでホスィ > インテル
プレスコ64がリリースされるまでは、EM64用のコンパイラはおあずけかな。

24 :
>> 22
逆もあるかもしれませんね. x86-64 で速そうな処理系として PathScale
がありますから, Intel のコンパイラが良いとは限らない場合も
考えられますね.

25 :
C compilerの7.0はもう手に入らないんでしょうか?

26 :
Pentium3 Mobileとprocに出るCPUを使っているんですけど、
このPC向けのおすすめCFLAGSってなにがいいんでしょう。
-xBと-axBはよさげなんですけど、他がイマイチ...
# せめてman iccの内容が読めるぐらいの英語力がほしい

27 :
>>26
http://www.xlsoft.com/jp/products/intel/download.html
ここに日本語のマニュアルがある

28 :
PathScaleとかPGIのAMD64用のコンパイラの評価のレビューを頼みたい。

29 :
>>6
私もXEON(EM64T)環境でつまづいてます。
Intel Fortran Compiler v8.1 "l_fce_p_8.1.018"は試した?

30 :
>29
すいません、8.1は試してないです。8.0台です

31 :
>>6
本日Intel Premium Supportから"l_fce_pc_8.1.020"をDLしたら、問題なくコンパイル&リンクできました。当方、XEON 3.6 MHz EM64T+Redhat Enterprise Linux WS3です。

32 :
debian sargeにitnel fortran 8.0をalienしてインストールしてみたんだけど、
ライブラリ関係がインストールされない。。。
/opt/intel_fc_80/にはdocとbinしかないっす。
どうやってインストールするの??

33 :
>>32
私の場合,l_fc_pc_8.0.046.tar.gzをダウンロード,展開して,
$ fakeroot -u alien intel-ifort8-8.0-55.i386.rpm
でintel-ifort8_8.0-56_i386.debを作って
# dpkg -i intel-ifort8_8.0-56_i386.deb
でインストール.これだけだと/optにインストールされるだけ
だから,
http://www.gfd-dennou.org/arch/cc-env/ifc/
ここのパッケージもインストールすると/optの下のファイルから
/usr/binや/usr/libにシンボリックリンクを張ってくれる.
無論自分で張っても問題無い.

34 :
kernel2.6のmakeできる?

35 :
できる

36 :
嘘をつくな。できない

37 :
34-36>
icc 8.0でテストしてみました. モジュール関係はテストしていませんが 2.6.7
はmakeできました. .S -> .o の部分に関して手で介入してしまいましたけど.
make したばかりのカーネルから書いてみました.

38 :
iccでコンパイルできるようにするパッチも出てたしね

39 :
>>37
パッチ掲載希望
漏れはpyrillionのパッチを使ってるけど

40 :
期待age

41 :
Opteron対応について詳細調査きぼんぬ。

42 :
PCクラスタ作って計算やってる。
ifort最高!!!

43 :
マッキーきたーーーーーーーーーーーー!

44 :
>>33
l_fc_p_8.0.034.tar.gzしか見当たらないのですが、8-8.0-55のはどこにあるのですか?

45 :
-rw-r--r-- 1 0 0 131436906 Sep 14 16:57 l_cc_p_8.1.021.tar.gz
全部入り?

46 :
I_*c_p_8.1シリーズ,出現しました。

47 :
みんなどこのftpのこと言ってるんだ?
それとも夢見てるのか??

48 :
>>46
漏れは、intel premierからダウンロードした。Fedora Core2にインストール
したけど、コンパイル時にg++の場所がわかんないってErrorがでてつかえね
えよ。

49 :
RHEL3.0でもg++の場所がわかんないってErrorがでて使えなかった。

50 :
ゃっと8.1きたー・・・

51 :
EM64Tの遅さはコンパイラに細工してカバー。
ttp://www.64bit.jp/benchmark.htm

52 :
もしかしてWin版の8.1って日本語版のVS2003に対応できない・・?

53 :
>>51
頭悪そうだな

54 :
インテルのEM64Tコンパイラは、このような大きな配列の制限はありますか??
前スレから引用
> 840 名前:login:Penguin[] 投稿日:04/01/14 01:50 ID:bxmMbzPt
> GCCだと、AMD64用の場合、大きな配列が取れない。
> AUTOの配列の場合、1個あたり2GBを超える配列は取れない。
> STATICの配列の場合、1個で4GBを超える配列は取れない。
> STATIC配列では一個が大きくなくても、合計で4GBを超える配列は取れない。
>
> 大きなメモリ−を割り当てる唯一の方法は、MALLOCとかCALLOCなどで
> 動的に配列を割り当てること。Cならこれでメモリサイズの制約から
> 逃げるしかない。

55 :
>>54
Windows版だけど、上から2GB、2GB、無制限(?)

56 :
>>55
あぁ、やっぱり制限あるんですね。

57 :
Opteron+FC2-x86_64で8.0→8.1にしてみました。が、
ifort -O3 -xW -tpp7 -static では速度にほとんど差がありません。
man で見るとEM64Tは自動で判断するようなのですが、
明示的に指定するオプションはないのでしょうか?

58 :
>>48
解決情報キボンヌ。intel のForumで-cxxlib-gcc -gcc-name=/usr/bin/gccの
オプション指定しろって書いてあったが今度は/usr/bin/gccっていうディ
レクトリが見つかりませんってエラーが出る。ディレクトリ?

59 :
>>58
うちではgcc-3.2.3だったかな、だとちゃんといけて、
gcc-3.3.4をいれると通らない。
8.1で通るようになったかな?と思っていれてみたけど
やっぱりgcc-3.3.4だとだめだ。

60 :
>>59
fedora Core2でgcc3.4.2を使ってるけど、これにicc8.0.070.1をインスコ
して使ってるが、問題なく使用できている。
これをicc8.1に入れ替えたとたんに、g++かの場所がわからないってエラ
ーが出る。なぜ?

61 :
みんなl_cc_p_8.1.021.tar.gzインストール後,動かないのか。
こうなるとintelのバグ・・・というかミスの可能性が高いですね
最新update済みのFedoraCore2でも
icc: error: could not find directory in which g++ resides
でiccが動かない。

62 :
8.1のリリースノートで
> -cxxlib-gcc Is Now the Default for C++
との記載があったので,8.0と同仕様にする-cxxlib-iccを付けても状況は変わらず。
さてどうしたものか。

63 :
>>62
-gcc-neme=/usr/bin/gccって試したが不可。
export GCCROOT=/usrって試しても不可。
いずれも、intelのuser forumに書いてある内容なんだけどだめだった。

64 :
さて022が出たわけだが

65 :
質問です。
intel.com でアカデミック向けの無料 Frotran compiler があるわけですが[1]、
一方で、日本の代理店であるXLSOFTでは、アカデミック版を売っています[2]。
両者で何が違うのでしょうか?
リファレンス
[1]ttp://intel.com/software/products/noncom/
[2]ttp://www.xlsoft.com/jp/products/intel/prices_academic.html

66 :
質問です。
intel.com でアカデミック向けの無料 C/C++ compiler があるわけですが[1]、
一方で、日本の代理店であるXLSOFTでは、アカデミック版を売っています[2]。
両者で何が違うのでしょうか?
リファレンス
[1]ttp://intel.com/software/products/noncom/
[2]ttp://www.xlsoft.com/jp/products/intel/prices_academic.html

67 :
>>65
とか言いたくなってしまいました(失礼
[1]をしっかり読むとともに、リンクされているFAQも読んでくださいな
ttp://intel.com/software/products/noncom/faq.htm
> Q. I am a professor. Can I use the non-commercial product as part of the coursework I teach?
> A. No. You may qualify for the academic license .

68 :
>>64
022はEM64T用みたいだね。

69 :
入れてみました022。
で、同じソースをコンパイルしてfileコマンドの比較をしてみました。
test32: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), for GNU/Linux 2.2.5, dynamically linked (uses shared libs), not stripped
test64: ELF 64-bit LSB executable, AMD x86-64, version 1 (SYSV), for GNU/Linux 2.4.0, dynamically linked (uses shared libs), not stripped
ちゃんとx86-64になってます。
でも、実行速度はチョットだけ遅くなっちゃいました…AMDだから?

70 :
ん〜そうかも…
gcc-3.4.2とかとくらべたらどう?

71 :
つまり、AMD64でも、EM64Tでも、どちらでも今のINTEL FORTRAN/C++は
コンパイラとして使えるし、吐き出すコードはどちらでも動作する。
あるいはコンパイラが動作したプラットフォーム用のコードを吐く
ということ?? ところで結果は正常ですか。 3DNOWとかAMD独自部分は
サポートしてないと思うのですが、64ビットのアドレス空間はちゃんと
使えますか? sizeof(void*) が8ですか? SSE3をAMD64用にも吐くのでしょうか?

72 :
http://www.coyotegulch.com/reviews/linux_compilers/
コンパイラ比較

73 :
>>72
む板のgccスレ見たのですか?

74 :
>>71
022の出すコードはすくなともFC2ではx86_64と認識されてます。
EM64Tは持ってません。(プレスコ64ってまだですよね?)
64ビットのアドレス空間は試してません。sizeof(void*)は8でした。
ウチのOpteronではコンパイルオプションが -xW でないと動かなかった
のでSSE3は使ってません。新しいOpteronってSSE3を使えるんですか?

75 :
>>74
>新しいOpteronってSSE3を使えるんですか?
その予定。
ttp://www.vr-zone.com/?i=1123&s=1

76 :
>>63
Fedora Core2(i386)でエラーが出る件をintelのuser forumに書き込んだが
レスがつかないなあ。みんなは、どうよ。ちゃんと動作してる?

77 :
ソースコードにもよるが,iccで-x?と-ipoの最適化効果は大きい。
何かしらエラーが出る場合は、せめて-ipを入れた方がよい。
(-ipを入れることで自前のプログラムでは10%程度高速化された)
>>72
・・・LAMEとPov-rayでは-ipを入れて欲しかったなorz

78 :
>>77
漏れは、Ingoのパッチをあててkernel-2.6.9をcompileしてるが
icc8.0で、オプションで-xWNを指定するとkernelが起動しない
よ。あと、-parallelもだめ。-ipはOKだった。やっぱり極度の最
適化は、kernelの場合避けた方が吉?

79 :
>>72
内容は詳しく読んでないけど,表の数字を見る限り,64bits にする
価値はあまり無さげな気がした..
# 4GB 以上のメモリを積めばいいのだろうが..

80 :
>>78
 カーネルのソースは全く知らないから何とも言えないorz
そもそもkernelはgcc向けに作っているだろうから、無理してiccを使わない方が・・・

81 :
>>80
パッチは、http://www.pyrillion.org/で手に入るもので作成者は
Ingo A. Kubbilun氏だけど結構有名な人みたいよ。漏れは、最近
はこのパッチでkernelをコンパイルして使ってるけど今のところ
問題は出てないよ。最適化オプションは-O3 -march=pentium4
-ipって指定してる。

82 :
英語版でもだめぽ。
どうもVS統合がインストールされないバグがあるみたい。

83 :
【PC】HP、Itanium搭載ワークステーション打ち切り【09/25】
http://money3.2ch.net/test/read.cgi/bizplus/1096072553/
http://www.itmedia.co.jp/news/articles/0409/25/news007.html
米HPはIntelのItanium 2を搭載したワークステーション販売を打ち切った。
市場の状況を理由に、同社は64ビット対応の同プロセッサを搭載したワークステーション販売を9月1日で打ち切った。
ワークステーション事業から退くという決定は、HPのItanium搭載サーバ製品に影響するものではないと話している。
ここが凄い。HPが言うなよ(w
> 「当社はItaniumでワークステーション市場に重点を置いたことはなかった。ワークステーション市場ではXeonプロセッサシリーズのNoconaとEM64Tが最もコスト効率が高い」
さようなら itanium

84 :
fvwmをMacOSXで使ってる人っているのかな?
Exposeとか使えるのかが気になる。

85 :
>>76
http://softwareforums.intel.com/ids/board/message?board.id=16&message.id=1991
要するに、環境変数GXX_INCLUDEとGXX_ROOTTを正しく設定しろ、ということらしい。

86 :
>>76
RHEL3.0でcshを使用しているが,.cshrcの中で
setenv GXX_ROOT /usr/lib/gcc-lib/i386-redhat-linux/3.2.3
のように環境変数を設定したらv8.1は動いたよ。
FC2でもディレクトリ名を適宜変えて同様に設定すれば良いと思います。
FC2だと,/usr/lib/gcc-lib/i386-redhat-linux/3.3.3 でしょうか?
あとは,自分で確認して見てください。

87 :
>>85,86
サンクス
ビルド通った
ちなみにお遊びでXFree86 4.4をビルドしたわけだがセグフォで起動せず

88 :
ItaniumってHPとインテルが組んで作ったCPUだったんだぜ。それをHPが
見捨ててしまったということは、その前途に黒雲が立ち込めているよね。
インテル自身も、止めちゃうんじゃないの、ああいった複数命令を埋め込んだ
アーキテクチャーは。今後しばらくのトレンドは、マルチコアによる
多重スレッド処理かなぁ。

89 :
>88
HPが辞めたのはWSだけ,サーバーは辞めてないよ.
勘違いしないように.

90 :
>>89
でも、WSがなくなるということは、ItaniumのターゲットのひとつだったCAE関連ソフトは
今後Itaniumをサポートしてくれなくなる気が。

91 :
>90
意味が分かりません.
WSやーめた -> CAEなんかどうでもいい
ってことでしょ.

92 :
通信などのサーバーやデーターベースにはイタニウムはむしろ、スカラーが
遅いから向かない。いちおう2GB/4GBをこえる実メモリを積んで、やたらに
沢山のジョブなりプロセスなりを同時並行して走らせることが出来るという
点に64ビットアドレスの価値はあったんだろうが、それももはやAMDの
オプテロンであろうとインテルの EM64Tでも一応OKで、たぶんむしろ
速いだろうし。またOSが32ビットのプロセスをサポートしてさえすれば、
32ビットのIA32のバイナリのままでそれぞれは2GB以内でもトータルでは
沢山のプロセスが同時並行して走るからね。

93 :
icc8.1入れた
icpcの挙動が -cxxlib-gcc がデフォルトになったようだ。
しかし、
$ icpc foo.c -o foo
foo.c(1): catastrophic error: could not open source file "iostream"
#include <iostream>
のようなエラー発生
-gcc-name=/usr/bin/gcc-3.2 、というのをつけると
使えるようになるけど、なぜかロケールC限定
それでは...というので
-gcc-name=/usr/bin/gcc-3.3|3.4
のようにしてみたが、これは通らない。
または
-cxxlib-icc
で以前の挙動の模様。

94 :
>>85 に書いてあるとおりやったら、けたのでってきます。
どうもすみません。
## 恥ヲ晒ス ##
# debianの場合
GXX_ROOT=/usr/lib/gcc-lib/i486-linux/3.3.4
GXX_INCLUDE=/usr/include/c++/3.3
export GXX_ROOT GXX_INCLUDE

95 :
エクセルソフトのページにも書いてあるぞ。
http://www.xlsoft.com/jp/products/intel/compilers/icpplnx.html

96 :
age

97 :
125MBもあるなー
でかいなー

98 :
Windowsだけど、8.1で新しいコンパイラオプションつかったら速度が2倍近くになったぞ。
CVFよりもかなり速い。というか、8.0が・・。
Linuxのも試してみよ・・。

99 :
>>98
CPUは何ですか?

100read 1read
1read 100read
TOP カテ一覧 スレ一覧 削除依頼
・ 次のスレ
Linuxを再インストールしたら上げるスレ
Superπベンチスレ(自作PC板別館) 1回目のループ
ドラえもん 〜のびたのLinux奮闘記〜
オープンソースはすべてのセキュリティ原則に反する