11. 2010/5/15 Mozilla 勉 強会@東京 3rd
3. 最適化オプションとの兼ね合い
by ABE Hiroki aka h ATrayflood
12. 2010/5/15 Mozilla 勉 強会@東京 3rd
--enable-optimize
コンパイラに/O2などを渡せる。
--enable-jemalloc
Cランタイムを独自に置き換え。
msvcr80.dll → mozcrt19.dll
by ABE Hiroki aka h ATrayflood
13. 2010/5/15 Mozilla 勉 強会@東京 3rd
--enable-libxul
前述。ロード時間の短縮。
プロファイルガイド付き最適化
ビルド後、実際に実行する。
統計を元に、最適化を実行。
by ABE Hiroki aka h ATrayflood
14. 2010/5/15 Mozilla 勉 強会@東京 3rd
プロファイルガイド付き最適化
(PGO)は大変。
by ABE Hiroki aka h ATrayflood
15. 2010/5/15 Mozilla 勉 強会@東京 3rd
・所要時間
PGOオフ:約1時間
PGOオン:約3時間
オフに比べて約3倍。
by ABE Hiroki aka h ATrayflood
16. 2010/5/15 Mozilla 勉 強会@東京 3rd
・メモリ消費
link.exeが最大で1.3GB消費。
OS含めて全体で2GB以上消費。
物理メモリ2GBでも足りない。
by ABE Hiroki aka h ATrayflood
17. 2010/5/15 Mozilla 勉 強会@東京 3rd
・ディスク消費
PGOオフ:約850MB
PGOオン:約7.6GB
オフに比べて約9倍。
by ABE Hiroki aka h ATrayflood
18. 2010/5/15 Mozilla 勉 強会@東京 3rd
てか、普通はPGO前のxul.dllのリンクで落ちる。
fatal error C1083: コンパイラの中間生成物 ファイルを開けません。
'../../staticlib/components/gklayout.lib': Not enough space
by ABE Hiroki aka h ATrayflood
19. 2010/5/15 Mozilla 勉 強会@東京 3rd
細工してこれを乗り越えても、
今度はリンカの内部エラー。
by ABE Hiroki aka h ATrayflood
20. 2010/5/15 Mozilla 勉 強会@東京 3rd
Windows自身に
細工する必要があるらしい。
C:boot.ini /3GB
bugzilla MDC
by ABE Hiroki aka h ATrayflood
21. 2010/5/15 Mozilla 勉 強会@東京 3rd
しかし、自分のPCではダメだった。
それどころか、Windowsが不安定に。
ビルド機 FMV LOOX R A70N
by ABE Hiroki aka h ATrayflood
22. 2010/5/15 Mozilla 勉 強会@東京 3rd
環境によっては、/3GBがダメなのかも。
(公式バイナリのビルド機は、
Windows Server 2003らしい)
by ABE Hiroki aka h ATrayflood
23. 2010/5/15 Mozilla 勉 強会@東京 3rd
--enable-ipcかつ
--disable-libxulでの
ビルドも企んでみた。(無謀にも)
by ABE Hiroki aka h ATrayflood
24. 2010/5/15 Mozilla 勉 強会@東京 3rd
循環参照リンクの罠にハマり、
ビルドできても起動時エラー。
by ABE Hiroki aka h ATrayflood
32. 2010/5/15 Mozilla 勉 強会@東京 3rd
Visual Studio 2010
はどうなった?
by ABE Hiroki aka h ATrayflood
33. 2010/5/15 Mozilla 勉 強会@東京 3rd
試してみた。
・巨大libが読めないエラーは克服。
・PGO後の内部エラーも克服。
・link.exeのメモリ消費もやや改善。
by ABE Hiroki aka h ATrayflood
34. 2010/5/15 Mozilla 勉 強会@東京 3rd
しかし、jemalloc未対応。
by ABE Hiroki aka h ATrayflood
35. 2010/5/15 Mozilla 勉 強会@東京 3rd
なので、VS2010でもまだ制約あり。
・IPCとPGOオン + jemallocオフ
ただし、これは近いうちに
可能になると予想。
by ABE Hiroki aka h ATrayflood
36. 2010/5/15 Mozilla 勉 強会@東京 3rd
ふぉくす子のイラストお借りしました。多謝。
http://piro.sakura.ne.jp/pics/_col.html#y2006
by ABE Hiroki aka h ATrayflood
37. 2010/5/15 Mozilla 勉 強会@東京 3rd
・リンク集
Bug 543034 - Windows builder failing, with nsannotationservice.cpp(457)
: "fatal error C1001: An internal error has occurred in the compiler"
or "fatal error C1002: compiler is out of heap space in pass 2"
https://bugzilla.mozilla.org/show_bug.cgi?id=543034
Building with Profile-Guided Optimization
https://developer.mozilla.org/en/Building_with_Profile-Guided_Optimization
FMV LOOX R A70N
http://www.fmworld.net/fmv/pcpm0804/biblo_loox/lr/index.html
by ABE Hiroki aka h ATrayflood