アカウント名:
パスワード:
バリバリチューン (死語?) の定義によりますが、一応、今のところ (今 == 2006/03/04 05:33:54) Gentoo で sys-devel/gcc-4.1.0 は masked 状態のようです (testing の更に前)。
まあ、少なからぬ人が package.mask を書き換えるなり何なりして動かしていそうな気はしますが...
オブジェクトファイルを跨るIPOをするのならld, arも変更する必要があります(iccではxild, xiar又はxild -lib)し、Makefileでのファイル間の依存性をつかったビルドもほぼできなくなります(hoge.cを変更しただけでもhoge.cで定義されている関数を呼んでいる各所の*.oや*.aが影響をうける)。
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
「毎々お世話になっております。仕様書を頂きたく。」「拝承」 -- ある会社の日常
Gentooな人 (スコア:2, おもしろおかしい)
#KDEでモサラーなAC
Re:Gentooな人 (スコア:3, 参考になる)
バリバリチューン (死語?) の定義によりますが、一応、今のところ (今 == 2006/03/04 05:33:54) Gentoo で sys-devel/gcc-4.1.0 は masked 状態のようです (testing の更に前)。
まあ、少なからぬ人が package.mask を書き換えるなり何なりして動かしていそうな気はしますが...
Re:Gentooな人 (スコア:2, 参考になる)
ただ、前コメントのとおりgcc-4.1.0はmaskedなので、gcc-4.1.0から構築するにはpackage.mask等の書き換えが必要ですが。
# gentooの現時点のx86 stableなgccは3.4.5です
しないさせない!スルー力
Re:Gentooな人 (スコア:1, すばらしい洞察)
なんと言うか週毎にビルドして追いかけていた
Gentooer(?)にとっては別に変わりないのでは?
# 去年年末までは追いかけてたのですが根性足りませんでした><
Re:Gentooな人 (スコア:5, 参考になる)
今は4.1.1 prereleaseを使っていますが、linux kernelもXorg X11もFirefoxもコンパイルでき、普通に動きます。
GNU/Linux pentium4環境でicc9(Intel cc version9)を使っていますが、
* icc9は大きなソースファイルを-O3でコンパイルするのに非常にメモリを喰うが、gcc4はそんなに喰わない。でもgcc3時代よりは肥大化している。
* icc9のIPO(リンク時に複数のオブジェクトファイルの垣根を超えてinline化などをする最適化)は更にメモリを喰う
* 手元のものを幾つか比較した限り数値計算主体のものはicc9の方が速いこともあるが劇的な差があるわけではないので、gccを前提に作られたconfigure.inやソースを書き直す手間のほうが大きいかも…
* firefoxをgcc4.1でMOZ_PROFILE_GENERATE=1, MOZ_PROFILE_USE=1としてprofile最適化をしてビルドするとicc9より体感としては速い気がする
厳密に比較したわけではないのであくまでご参考に。
gccはIPOではなく、profileを利用した最適化に力をいれているのではなかったかな?
オブジェクトファイルを跨るIPOをするのならld, arも変更する必要があります(iccではxild, xiar又はxild -lib)し、Makefileでのファイル間の依存性をつかったビルドもほぼできなくなります(hoge.cを変更しただけでもhoge.cで定義されている関数を呼んでいる各所の*.oや*.aが影響をうける)。
Re:Gentooな人 (スコア:5, 参考になる)
でもIPO?をするからといってMakefileの依存関係は変わりませんよ。*.cのコンパイル引数にhoge.oを渡すわけじゃありませんよね? 実際にはldが再度cc1 *.oを呼び出してるんでは、と。
# icc9は知りませんがMIPS(IRIX)はそうやってました。
IPOには限界がありますし、レジスタの足りないx86では手も足も出ないのでは…。逆にProfile最適化の場合、profileから分岐確率を調べてヒントを埋め込むだけでも速度的にはかなり稼げると思います。
Re:Gentooな人 (スコア:1)
# 最近こんなネタばかりだけどID
masashi