SlideShare a Scribd company logo
1 of 37
Download to read offline
2010/5/15 Mozilla 勉 強会@東京 3rd
firefox-3.6.4
以降のビルドについて
by ABE Hiroki aka h ATrayflood
2010/5/15 Mozilla 勉 強会@東京 3rd
自己紹介
・名前:アベヒロキ (hATrayflood)
・職業:会社員 → Now Neeting ...
・URL:http://rayflood.org/diary/
・住所:長野市 地元:東御市
by ABE Hiroki aka h ATrayflood
2010/5/15 Mozilla 勉 強会@東京 3rd
1. ビルドオプションの追加
2. モジュール依存関係の変更
3. 最適化オプションとの兼ね合い
4. 実際のビルド
by ABE Hiroki aka h ATrayflood
2010/5/15 Mozilla 勉 強会@東京 3rd
まず、
by ABE Hiroki aka h ATrayflood
2010/5/15 Mozilla 勉 強会@東京 3rd
「プラグインのプロセス分離」の
略称「OOPP」は呼びづらいので
ここでは「IPC」と呼びます。   
by ABE Hiroki aka h ATrayflood
2010/5/15 Mozilla 勉 強会@東京 3rd
1. ビルドオプションの追加
by ABE Hiroki aka h ATrayflood
2010/5/15 Mozilla 勉 強会@東京 3rd
--enable-ipc
 IPCを有効にする。デフォルト。
 オフにするには、--disable-ipc。
--enable-libxul (firefox-3.0から)
 dllとxptをひとまとめにする。デフォルト。
 IPCを有効にする場合は必須。
by ABE Hiroki aka h ATrayflood
2010/5/15 Mozilla 勉 強会@東京 3rd
2. モジュール依存関係
by ABE Hiroki aka h ATrayflood
2010/5/15 Mozilla 勉 強会@東京 3rd
by ABE Hiroki aka h ATrayflood
2010/5/15 Mozilla 勉 強会@東京 3rd
by ABE Hiroki aka h ATrayflood
2010/5/15 Mozilla 勉 強会@東京 3rd
3. 最適化オプションとの兼ね合い
by ABE Hiroki aka h ATrayflood
2010/5/15 Mozilla 勉 強会@東京 3rd
--enable-optimize
 コンパイラに/O2などを渡せる。
--enable-jemalloc
 Cランタイムを独自に置き換え。
 msvcr80.dll → mozcrt19.dll
by ABE Hiroki aka h ATrayflood
2010/5/15 Mozilla 勉 強会@東京 3rd
--enable-libxul
 前述。ロード時間の短縮。
プロファイルガイド付き最適化
 ビルド後、実際に実行する。
 統計を元に、最適化を実行。
by ABE Hiroki aka h ATrayflood
2010/5/15 Mozilla 勉 強会@東京 3rd
プロファイルガイド付き最適化
(PGO)は大変。
by ABE Hiroki aka h ATrayflood
2010/5/15 Mozilla 勉 強会@東京 3rd
・所要時間
  PGOオフ:約1時間
  PGOオン:約3時間
 
 オフに比べて約3倍。
by ABE Hiroki aka h ATrayflood
2010/5/15 Mozilla 勉 強会@東京 3rd
・メモリ消費
  link.exeが最大で1.3GB消費。
  OS含めて全体で2GB以上消費。
 
 物理メモリ2GBでも足りない。
by ABE Hiroki aka h ATrayflood
2010/5/15 Mozilla 勉 強会@東京 3rd
・ディスク消費
  PGOオフ:約850MB
  PGOオン:約7.6GB
 
 オフに比べて約9倍。
by ABE Hiroki aka h ATrayflood
2010/5/15 Mozilla 勉 強会@東京 3rd
てか、普通はPGO前のxul.dllのリンクで落ちる。
fatal error C1083: コンパイラの中間生成物 ファイルを開けません。
'../../staticlib/components/gklayout.lib': Not enough space
by ABE Hiroki aka h ATrayflood
2010/5/15 Mozilla 勉 強会@東京 3rd
細工してこれを乗り越えても、
今度はリンカの内部エラー。
by ABE Hiroki aka h ATrayflood
2010/5/15 Mozilla 勉 強会@東京 3rd
Windows自身に
細工する必要があるらしい。
C:boot.ini /3GB
bugzilla MDC
by ABE Hiroki aka h ATrayflood
2010/5/15 Mozilla 勉 強会@東京 3rd
しかし、自分のPCではダメだった。
それどころか、Windowsが不安定に。
 
ビルド機 FMV LOOX R A70N
by ABE Hiroki aka h ATrayflood
2010/5/15 Mozilla 勉 強会@東京 3rd
環境によっては、/3GBがダメなのかも。
 
(公式バイナリのビルド機は、
Windows Server 2003らしい)
by ABE Hiroki aka h ATrayflood
2010/5/15 Mozilla 勉 強会@東京 3rd
--enable-ipcかつ
--disable-libxulでの
ビルドも企んでみた。(無謀にも)
by ABE Hiroki aka h ATrayflood
2010/5/15 Mozilla 勉 強会@東京 3rd
循環参照リンクの罠にハマり、
ビルドできても起動時エラー。
by ABE Hiroki aka h ATrayflood
2010/5/15 Mozilla 勉 強会@東京 3rd
4. 実際のビルド
by ABE Hiroki aka h ATrayflood
2010/5/15 Mozilla 勉 強会@東京 3rd
PCにもよるが、
/3GBがダメな場合は、何らかの
オプションを削らざるを得ない。
by ABE Hiroki aka h ATrayflood
2010/5/15 Mozilla 勉 強会@東京 3rd
多分、以下の2択。
・IPCオン + PGOオフ
・IPCとlibxulオフ + PGOオン
by ABE Hiroki aka h ATrayflood
2010/5/15 Mozilla 勉 強会@東京 3rd
自分が持ってるVisual Studioは
・2005 Std … PGO不可
・2008 Std … PGO可
なので、
by ABE Hiroki aka h ATrayflood
2010/5/15 Mozilla 勉 強会@東京 3rd
2005:IPCオン + PGOオフ
2008:IPCとlibxulオフ + PGOオン
の構成でビルドすることに。
by ABE Hiroki aka h ATrayflood
2010/5/15 Mozilla 勉 強会@東京 3rd
結論:
 IPCかつフル最適化は
 環境を選ぶ。
by ABE Hiroki aka h ATrayflood
2010/5/15 Mozilla 勉 強会@東京 3rd
ところで、
by ABE Hiroki aka h ATrayflood
2010/5/15 Mozilla 勉 強会@東京 3rd
Visual Studio 2010
はどうなった?
by ABE Hiroki aka h ATrayflood
2010/5/15 Mozilla 勉 強会@東京 3rd
試してみた。
・巨大libが読めないエラーは克服。
・PGO後の内部エラーも克服。
・link.exeのメモリ消費もやや改善。
by ABE Hiroki aka h ATrayflood
2010/5/15 Mozilla 勉 強会@東京 3rd
しかし、jemalloc未対応。
by ABE Hiroki aka h ATrayflood
2010/5/15 Mozilla 勉 強会@東京 3rd
なので、VS2010でもまだ制約あり。
・IPCとPGOオン + jemallocオフ
 
ただし、これは近いうちに
可能になると予想。
by ABE Hiroki aka h ATrayflood
2010/5/15 Mozilla 勉 強会@東京 3rd
ふぉくす子のイラストお借りしました。多謝。
http://piro.sakura.ne.jp/pics/_col.html#y2006
by ABE Hiroki aka h ATrayflood
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

More Related Content

Viewers also liked

Nseg57 ppaつくった話
Nseg57 ppaつくった話Nseg57 ppaつくった話
Nseg57 ppaつくった話hATrayflood
 
高橋Rf.html + printplus
高橋Rf.html + printplus高橋Rf.html + printplus
高橋Rf.html + printplushATrayflood
 
The Need of Sustainable Shrimp Farming In Vietnam
The Need of Sustainable Shrimp Farming In VietnamThe Need of Sustainable Shrimp Farming In Vietnam
The Need of Sustainable Shrimp Farming In VietnamNguyen Dang Anh Thi
 
Nseg26 you should become a mozillian !!
Nseg26 you should become a mozillian !!Nseg26 you should become a mozillian !!
Nseg26 you should become a mozillian !!hATrayflood
 
Devdo17 nsegの現状と課題
Devdo17 nsegの現状と課題Devdo17 nsegの現状と課題
Devdo17 nsegの現状と課題hATrayflood
 
Nseg15 一般的じゃないpython入門
Nseg15 一般的じゃないpython入門Nseg15 一般的じゃないpython入門
Nseg15 一般的じゃないpython入門hATrayflood
 
Modest09 j query事始め
Modest09 j query事始めModest09 j query事始め
Modest09 j query事始めhATrayflood
 
Devnaga6 高橋rf.html + printplusリリース
Devnaga6 高橋rf.html + printplusリリースDevnaga6 高橋rf.html + printplusリリース
Devnaga6 高橋rf.html + printplusリリースhATrayflood
 
Nseg41 あなたの知らないjavascriptの基本
Nseg41 あなたの知らないjavascriptの基本Nseg41 あなたの知らないjavascriptの基本
Nseg41 あなたの知らないjavascriptの基本hATrayflood
 
Finance For Sustainable Consumption and Production in Vietnam
Finance For Sustainable Consumption and Production in VietnamFinance For Sustainable Consumption and Production in Vietnam
Finance For Sustainable Consumption and Production in VietnamNguyen Dang Anh Thi
 
Our tongan flag
Our tongan flagOur tongan flag
Our tongan flagtinivia
 
Environmental Management Accounting Dissemination Activitites In Vietnam
Environmental Management Accounting Dissemination Activitites In VietnamEnvironmental Management Accounting Dissemination Activitites In Vietnam
Environmental Management Accounting Dissemination Activitites In VietnamNguyen Dang Anh Thi
 
Nseg2 自宅サーバ運用について
Nseg2 自宅サーバ運用についてNseg2 自宅サーバ運用について
Nseg2 自宅サーバ運用についてhATrayflood
 
Sustainable Shrimp Farming In Vietnam 04.2007
Sustainable Shrimp Farming In Vietnam 04.2007Sustainable Shrimp Farming In Vietnam 04.2007
Sustainable Shrimp Farming In Vietnam 04.2007Nguyen Dang Anh Thi
 

Viewers also liked (14)

Nseg57 ppaつくった話
Nseg57 ppaつくった話Nseg57 ppaつくった話
Nseg57 ppaつくった話
 
高橋Rf.html + printplus
高橋Rf.html + printplus高橋Rf.html + printplus
高橋Rf.html + printplus
 
The Need of Sustainable Shrimp Farming In Vietnam
The Need of Sustainable Shrimp Farming In VietnamThe Need of Sustainable Shrimp Farming In Vietnam
The Need of Sustainable Shrimp Farming In Vietnam
 
Nseg26 you should become a mozillian !!
Nseg26 you should become a mozillian !!Nseg26 you should become a mozillian !!
Nseg26 you should become a mozillian !!
 
Devdo17 nsegの現状と課題
Devdo17 nsegの現状と課題Devdo17 nsegの現状と課題
Devdo17 nsegの現状と課題
 
Nseg15 一般的じゃないpython入門
Nseg15 一般的じゃないpython入門Nseg15 一般的じゃないpython入門
Nseg15 一般的じゃないpython入門
 
Modest09 j query事始め
Modest09 j query事始めModest09 j query事始め
Modest09 j query事始め
 
Devnaga6 高橋rf.html + printplusリリース
Devnaga6 高橋rf.html + printplusリリースDevnaga6 高橋rf.html + printplusリリース
Devnaga6 高橋rf.html + printplusリリース
 
Nseg41 あなたの知らないjavascriptの基本
Nseg41 あなたの知らないjavascriptの基本Nseg41 あなたの知らないjavascriptの基本
Nseg41 あなたの知らないjavascriptの基本
 
Finance For Sustainable Consumption and Production in Vietnam
Finance For Sustainable Consumption and Production in VietnamFinance For Sustainable Consumption and Production in Vietnam
Finance For Sustainable Consumption and Production in Vietnam
 
Our tongan flag
Our tongan flagOur tongan flag
Our tongan flag
 
Environmental Management Accounting Dissemination Activitites In Vietnam
Environmental Management Accounting Dissemination Activitites In VietnamEnvironmental Management Accounting Dissemination Activitites In Vietnam
Environmental Management Accounting Dissemination Activitites In Vietnam
 
Nseg2 自宅サーバ運用について
Nseg2 自宅サーバ運用についてNseg2 自宅サーバ運用について
Nseg2 自宅サーバ運用について
 
Sustainable Shrimp Farming In Vietnam 04.2007
Sustainable Shrimp Farming In Vietnam 04.2007Sustainable Shrimp Farming In Vietnam 04.2007
Sustainable Shrimp Farming In Vietnam 04.2007
 

Similar to Modest04 firefox-3.6.4以降のビルドについて

Modest16 ね?簡単でしょ? makefile.in
Modest16 ね?簡単でしょ? makefile.inModest16 ね?簡単でしょ? makefile.in
Modest16 ね?簡単でしょ? makefile.inhATrayflood
 
Modbuilders 独自ビルド環境について
Modbuilders 独自ビルド環境についてModbuilders 独自ビルド環境について
Modbuilders 独自ビルド環境についてhATrayflood
 
Firefox Localization Meetup
Firefox Localization MeetupFirefox Localization Meetup
Firefox Localization MeetuphATrayflood
 
Secret of Firefox
Secret of FirefoxSecret of Firefox
Secret of Firefoxdynamis
 
Innodb Deep Talk #2 でお話したスライド
Innodb Deep Talk #2 でお話したスライドInnodb Deep Talk #2 でお話したスライド
Innodb Deep Talk #2 でお話したスライドYasufumi Kinoshita
 
Firefox OS and Open Web Board - IGGG Meetup 2015 Spring
Firefox OS and Open Web Board - IGGG Meetup 2015 SpringFirefox OS and Open Web Board - IGGG Meetup 2015 Spring
Firefox OS and Open Web Board - IGGG Meetup 2015 SpringGunma University
 
補足 : LOOLのビルドについて
補足 : LOOLのビルドについて補足 : LOOLのビルドについて
補足 : LOOLのビルドについてMasataka Kondo
 
What's and What's not LibreOffice? / LibreOfficeとはなんであって、なんでないか
What's and What's not LibreOffice? / LibreOfficeとはなんであって、なんでないかWhat's and What's not LibreOffice? / LibreOfficeとはなんであって、なんでないか
What's and What's not LibreOffice? / LibreOfficeとはなんであって、なんでないかNaruhiko Ogasawara
 
Silverlight 4 のはなし
Silverlight 4 のはなしSilverlight 4 のはなし
Silverlight 4 のはなしterurou
 
Firefox OS の Wi-Fi 機能改善
Firefox OS の Wi-Fi 機能改善Firefox OS の Wi-Fi 機能改善
Firefox OS の Wi-Fi 機能改善Honma Masashi
 
LibreOfficeをビルドしてみよう(Windows)
LibreOfficeをビルドしてみよう(Windows)LibreOfficeをビルドしてみよう(Windows)
LibreOfficeをビルドしてみよう(Windows)Masataka Kondo
 
ROSCon_New_TB3_Friends_Toukairinn.pptx
ROSCon_New_TB3_Friends_Toukairinn.pptxROSCon_New_TB3_Friends_Toukairinn.pptx
ROSCon_New_TB3_Friends_Toukairinn.pptxToukairinn
 
ICTトラブルシューティングコンテスト LT資料
ICTトラブルシューティングコンテスト LT資料ICTトラブルシューティングコンテスト LT資料
ICTトラブルシューティングコンテスト LT資料Ken SASAKI
 
「自動化...か、かっこいいタル」(憧れ)から始める自動化
「自動化...か、かっこいいタル」(憧れ)から始める自動化「自動化...か、かっこいいタル」(憧れ)から始める自動化
「自動化...か、かっこいいタル」(憧れ)から始める自動化Hirokazu Kutsu
 
Chrome Devtools for beginners (v1.1)
Chrome Devtools for beginners (v1.1)Chrome Devtools for beginners (v1.1)
Chrome Devtools for beginners (v1.1)yoshikawa_t
 
ODF PlugFestを味見しよう/Tasting Odf plug fest
ODF PlugFestを味見しよう/Tasting Odf plug festODF PlugFestを味見しよう/Tasting Odf plug fest
ODF PlugFestを味見しよう/Tasting Odf plug festNaruhiko Ogasawara
 
携帯Webアプリケーション開発の基本とフレームワーク「mobylet」の紹介
携帯Webアプリケーション開発の基本とフレームワーク「mobylet」の紹介携帯Webアプリケーション開発の基本とフレームワーク「mobylet」の紹介
携帯Webアプリケーション開発の基本とフレームワーク「mobylet」の紹介Shin Takeuchi
 

Similar to Modest04 firefox-3.6.4以降のビルドについて (20)

Modest16 ね?簡単でしょ? makefile.in
Modest16 ね?簡単でしょ? makefile.inModest16 ね?簡単でしょ? makefile.in
Modest16 ね?簡単でしょ? makefile.in
 
Modbuilders 独自ビルド環境について
Modbuilders 独自ビルド環境についてModbuilders 独自ビルド環境について
Modbuilders 独自ビルド環境について
 
Firefox Localization Meetup
Firefox Localization MeetupFirefox Localization Meetup
Firefox Localization Meetup
 
Secret of Firefox
Secret of FirefoxSecret of Firefox
Secret of Firefox
 
Botkit4.x Has Come!
Botkit4.x Has Come!Botkit4.x Has Come!
Botkit4.x Has Come!
 
Innodb Deep Talk #2 でお話したスライド
Innodb Deep Talk #2 でお話したスライドInnodb Deep Talk #2 でお話したスライド
Innodb Deep Talk #2 でお話したスライド
 
bitshiftersご紹介
bitshiftersご紹介bitshiftersご紹介
bitshiftersご紹介
 
Firefox OS and Open Web Board - IGGG Meetup 2015 Spring
Firefox OS and Open Web Board - IGGG Meetup 2015 SpringFirefox OS and Open Web Board - IGGG Meetup 2015 Spring
Firefox OS and Open Web Board - IGGG Meetup 2015 Spring
 
補足 : LOOLのビルドについて
補足 : LOOLのビルドについて補足 : LOOLのビルドについて
補足 : LOOLのビルドについて
 
LibreOffice Online環境の構築
LibreOffice Online環境の構築LibreOffice Online環境の構築
LibreOffice Online環境の構築
 
What's and What's not LibreOffice? / LibreOfficeとはなんであって、なんでないか
What's and What's not LibreOffice? / LibreOfficeとはなんであって、なんでないかWhat's and What's not LibreOffice? / LibreOfficeとはなんであって、なんでないか
What's and What's not LibreOffice? / LibreOfficeとはなんであって、なんでないか
 
Silverlight 4 のはなし
Silverlight 4 のはなしSilverlight 4 のはなし
Silverlight 4 のはなし
 
Firefox OS の Wi-Fi 機能改善
Firefox OS の Wi-Fi 機能改善Firefox OS の Wi-Fi 機能改善
Firefox OS の Wi-Fi 機能改善
 
LibreOfficeをビルドしてみよう(Windows)
LibreOfficeをビルドしてみよう(Windows)LibreOfficeをビルドしてみよう(Windows)
LibreOfficeをビルドしてみよう(Windows)
 
ROSCon_New_TB3_Friends_Toukairinn.pptx
ROSCon_New_TB3_Friends_Toukairinn.pptxROSCon_New_TB3_Friends_Toukairinn.pptx
ROSCon_New_TB3_Friends_Toukairinn.pptx
 
ICTトラブルシューティングコンテスト LT資料
ICTトラブルシューティングコンテスト LT資料ICTトラブルシューティングコンテスト LT資料
ICTトラブルシューティングコンテスト LT資料
 
「自動化...か、かっこいいタル」(憧れ)から始める自動化
「自動化...か、かっこいいタル」(憧れ)から始める自動化「自動化...か、かっこいいタル」(憧れ)から始める自動化
「自動化...か、かっこいいタル」(憧れ)から始める自動化
 
Chrome Devtools for beginners (v1.1)
Chrome Devtools for beginners (v1.1)Chrome Devtools for beginners (v1.1)
Chrome Devtools for beginners (v1.1)
 
ODF PlugFestを味見しよう/Tasting Odf plug fest
ODF PlugFestを味見しよう/Tasting Odf plug festODF PlugFestを味見しよう/Tasting Odf plug fest
ODF PlugFestを味見しよう/Tasting Odf plug fest
 
携帯Webアプリケーション開発の基本とフレームワーク「mobylet」の紹介
携帯Webアプリケーション開発の基本とフレームワーク「mobylet」の紹介携帯Webアプリケーション開発の基本とフレームワーク「mobylet」の紹介
携帯Webアプリケーション開発の基本とフレームワーク「mobylet」の紹介
 

More from hATrayflood

KancolleSnifferを引き継いだ話と次期バージョンについて
KancolleSnifferを引き継いだ話と次期バージョンについてKancolleSnifferを引き継いだ話と次期バージョンについて
KancolleSnifferを引き継いだ話と次期バージョンについてhATrayflood
 
Nseg92 kotlin null safety
Nseg92 kotlin null safetyNseg92 kotlin null safety
Nseg92 kotlin null safetyhATrayflood
 
Nseg17 新世代firefox紹介
Nseg17 新世代firefox紹介Nseg17 新世代firefox紹介
Nseg17 新世代firefox紹介hATrayflood
 
Nseg18 カレーとfirefox
Nseg18 カレーとfirefoxNseg18 カレーとfirefox
Nseg18 カレーとfirefoxhATrayflood
 
Nseg10 pcセキュリティの第一歩
Nseg10 pcセキュリティの第一歩Nseg10 pcセキュリティの第一歩
Nseg10 pcセキュリティの第一歩hATrayflood
 
Nseg5 第17回北海道開発オフ参加報告
Nseg5 第17回北海道開発オフ参加報告Nseg5 第17回北海道開発オフ参加報告
Nseg5 第17回北海道開発オフ参加報告hATrayflood
 

More from hATrayflood (6)

KancolleSnifferを引き継いだ話と次期バージョンについて
KancolleSnifferを引き継いだ話と次期バージョンについてKancolleSnifferを引き継いだ話と次期バージョンについて
KancolleSnifferを引き継いだ話と次期バージョンについて
 
Nseg92 kotlin null safety
Nseg92 kotlin null safetyNseg92 kotlin null safety
Nseg92 kotlin null safety
 
Nseg17 新世代firefox紹介
Nseg17 新世代firefox紹介Nseg17 新世代firefox紹介
Nseg17 新世代firefox紹介
 
Nseg18 カレーとfirefox
Nseg18 カレーとfirefoxNseg18 カレーとfirefox
Nseg18 カレーとfirefox
 
Nseg10 pcセキュリティの第一歩
Nseg10 pcセキュリティの第一歩Nseg10 pcセキュリティの第一歩
Nseg10 pcセキュリティの第一歩
 
Nseg5 第17回北海道開発オフ参加報告
Nseg5 第17回北海道開発オフ参加報告Nseg5 第17回北海道開発オフ参加報告
Nseg5 第17回北海道開発オフ参加報告
 

Recently uploaded

論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNetToru Tamaki
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムsugiuralab
 
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdftaisei2219
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Yuma Ohgami
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略Ryo Sasaki
 
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Danieldanielhu54
 
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものですiPride Co., Ltd.
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A surveyToru Tamaki
 
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...Toru Tamaki
 

Recently uploaded (9)

論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
 
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdf
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
 
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Daniel
 
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものです
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey
 
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
 

Modest04 firefox-3.6.4以降のビルドについて

  • 1. 2010/5/15 Mozilla 勉 強会@東京 3rd firefox-3.6.4 以降のビルドについて by ABE Hiroki aka h ATrayflood
  • 2. 2010/5/15 Mozilla 勉 強会@東京 3rd 自己紹介 ・名前:アベヒロキ (hATrayflood) ・職業:会社員 → Now Neeting ... ・URL:http://rayflood.org/diary/ ・住所:長野市 地元:東御市 by ABE Hiroki aka h ATrayflood
  • 3. 2010/5/15 Mozilla 勉 強会@東京 3rd 1. ビルドオプションの追加 2. モジュール依存関係の変更 3. 最適化オプションとの兼ね合い 4. 実際のビルド by ABE Hiroki aka h ATrayflood
  • 4. 2010/5/15 Mozilla 勉 強会@東京 3rd まず、 by ABE Hiroki aka h ATrayflood
  • 5. 2010/5/15 Mozilla 勉 強会@東京 3rd 「プラグインのプロセス分離」の 略称「OOPP」は呼びづらいので ここでは「IPC」と呼びます。    by ABE Hiroki aka h ATrayflood
  • 6. 2010/5/15 Mozilla 勉 強会@東京 3rd 1. ビルドオプションの追加 by ABE Hiroki aka h ATrayflood
  • 7. 2010/5/15 Mozilla 勉 強会@東京 3rd --enable-ipc  IPCを有効にする。デフォルト。  オフにするには、--disable-ipc。 --enable-libxul (firefox-3.0から)  dllとxptをひとまとめにする。デフォルト。  IPCを有効にする場合は必須。 by ABE Hiroki aka h ATrayflood
  • 8. 2010/5/15 Mozilla 勉 強会@東京 3rd 2. モジュール依存関係 by ABE Hiroki aka h ATrayflood
  • 9. 2010/5/15 Mozilla 勉 強会@東京 3rd by ABE Hiroki aka h ATrayflood
  • 10. 2010/5/15 Mozilla 勉 強会@東京 3rd by ABE Hiroki aka h ATrayflood
  • 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
  • 25. 2010/5/15 Mozilla 勉 強会@東京 3rd 4. 実際のビルド by ABE Hiroki aka h ATrayflood
  • 26. 2010/5/15 Mozilla 勉 強会@東京 3rd PCにもよるが、 /3GBがダメな場合は、何らかの オプションを削らざるを得ない。 by ABE Hiroki aka h ATrayflood
  • 27. 2010/5/15 Mozilla 勉 強会@東京 3rd 多分、以下の2択。 ・IPCオン + PGOオフ ・IPCとlibxulオフ + PGOオン by ABE Hiroki aka h ATrayflood
  • 28. 2010/5/15 Mozilla 勉 強会@東京 3rd 自分が持ってるVisual Studioは ・2005 Std … PGO不可 ・2008 Std … PGO可 なので、 by ABE Hiroki aka h ATrayflood
  • 29. 2010/5/15 Mozilla 勉 強会@東京 3rd 2005:IPCオン + PGOオフ 2008:IPCとlibxulオフ + PGOオン の構成でビルドすることに。 by ABE Hiroki aka h ATrayflood
  • 30. 2010/5/15 Mozilla 勉 強会@東京 3rd 結論:  IPCかつフル最適化は  環境を選ぶ。 by ABE Hiroki aka h ATrayflood
  • 31. 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