狠狠撸

狠狠撸Share a Scribd company logo
ICSを
ビルドしてみた
横浜Androidプラットフォーム部
       2011.11.19
   kinneko@gmail.com
前回やらなかったので、
   自己绍介
そんなのイラナイ!
早く先にススメ!

 って人、挙手!
でもヤル!
?今日の役割:横浜PF部メンバ
 ?日本Androidの会
 ????運営委員/金沢支部長/組み込みWG/

?税務署的な職業:
 ?サラリーマン/組み込みLinux製品企画開発
 ?7月からTabletやってますが...

?keyword:
 ?Linux, iohack, Zope, bittorrent, KNOPPIX,
 ?LANTANK, GLANTANK, MAKAI, web.py,
 ?CryptoNAS, FreeTANK, Chumby, Android
最近の活动
?オライリー『初めてのAndroid 第3版』
??監修チーム

?日経Linux 2011年3月号 (2/8)
??最新 Android 2.3 大解剖
??Part4: PC向け最新版「Android 2.2」をネットブックで動かす

?ASCII technologies 2011年3月号 (2/24)
??徹底解剖 Android 2.3&3.0
??Part 2 ここが変わった!Androidアプリケーション開発環境構築法
??Part 3 Gingerbreadで大きく変わった
???????????????Androidのフルシステムビルド環境を作る

?週刊アスキー 2011年11月1日号(10/18)
??Android-x86のご意見版 きんねこ氏にハニカム版について聞いてみた!
お約束!


転職先募集中!
では、本题。
ICS、syncして
ビルドしてみた人、
     挙手!
まぁ、そんなに
 いないよね...
ってか、いたら惊く!
前回のAOSPミラーを
  repo syncで
 アップデートする
まる2日くらい
かかりました...
EMobileなので
帯域が狭いだけです...
error: RPC failed; result=28, HTTP code = 0
fatal: The remote end hung up unexpectedly



   今回も多発しました...
error: Exited sync due to fetch errors




   今回も多発しました...
error:   Exited   sync   due   to   fetch   errors
error:   Exited   sync   due   to   fetch   errors
error:   Exited   sync   due   to   fetch   errors
error:   Exited   sync   due   to   fetch   errors
error:   Exited   sync   due   to   fetch   errors
error:   Exited   sync   due   to   fetch   errors
error:   Exited   sync   due   to   fetch   errors
error: Exited sync due to fetch errors
error: Exited sync due to fetch errors
error: Exited sync due to fetch errors
error: Exited sync due to fetch errors
error: Exited sync due to fetch errors
使用容量は?


kinneko@BuildSV: /AOSP$ du -sh ./

8.1G ./
Gingerbreadでは、3.3GBだったのよ...
ローカルミラーから
 repo syncする
kinneko@BuildSV: $ mkdir ICS
kinneko@BuildSV: $ cd ICS/
kinneko@BuildSV: /ICS$ ../repo init -u ../
AOSP/platform/manifest.git -b
android-4.0.1_r1
kinneko@BuildSV: /ICS$ time ../repo sync
(略)
repo initialized in /home/kinneko/ICS
- 前回の教訓 -

ミラーのsyncがうまく
 いったからといって、
ファイルが壊れていない
   保証はない!
今回は、
リポジトリの破損は
 ありませんでした
- 前回の教訓 -

 快適すぎです。
    AOSPは
ミラーして使いましょう
 手順は前回資料で!
fetchするプロジェクト数は?



221
Gingerbreadでは、170だったのよ...


当然ながらsyncの時間も長くなる。
syncにかかる時間は?



real 6m43.091s
user 12m13.370s
sys 1m0.880s


Gingerbreadでは、
real 2m12.760sだったのよ...
3倍弱...
とてもネット経由で
単体syncやる気にならないな...

 側の負荷もバカにならないだろうし、
AOSPのミラー手順が準備されるわけだね。


そろそろ、重いターゲット部分は
分離式にしたほうがいいのじゃないだろうか。
あと、-j指定しなくても
repoが2スレッド動作している疑惑。


ミラーの時も1つずつ取得ではなかった。
前から?
ビルドしてみる
- 前回の教訓 -


ビルド時間は
お金で買える!
model name    :


     i7 980
Intel(R) Core(TM)   CPU   @



3.33GHz
MemTotal:


12323396 kB
滨颁厂をビルドしてみた
- 前回の教訓 -

    どのみち、
 ICSのビルドには、
このくらいのリソースが
    必要です。
その検証
kinneko@BuildSV: /ICS$ export ARCH=arm
kinneko@BuildSV: /ICS$ export PATH=/home/kinneko/
panda/L27.12.1-P2/build_tools/arm-2010q1/bin:/usr/
bin:/bin
kinneko@BuildSV: /ICS$ export CROSS_COMPILE=arm-
none-linux-gnueabi-
kinneko@BuildSV: /ICS$ . build/envsetup.sh
including device/samsung/maguro/vendorsetup.sh
including device/samsung/tuna/vendorsetup.sh
including device/ti/panda/vendorsetup.sh
including sdk/bash_completion/adb.bash
kinneko@BuildSV: /ICS$ lunch


You're building on Linux

Lunch menu... pick a combo:
   1. full-eng
   2. full_x86-eng
   3. vbox_x86-eng
   4. full_maguro-userdebug
   5. full_tuna-userdebug
   6. full_panda-eng


Which would you like? [full-eng] 1
マグロにツナ?
トロもあるらしい...
笔补苍诲补标準かよ!
=========================================
PLATFORM_VERSION_CODENAME=REL
PLATFORM_VERSION=4.0.1
TARGET_PRODUCT=full
TARGET_BUILD_VARIANT=eng
TARGET_BUILD_TYPE=release
TARGET_BUILD_APPS=
TARGET_ARCH=arm
TARGET_ARCH_VARIANT=armv7-a
HOST_ARCH=x86
HOST_OS=linux
HOST_BUILD_TYPE=release
BUILD_ID=ITL41D
=========================================
kinneko@BuildSV: /ICS$ time make -j12
=========================================
(略)



real   27m59.741s
user 248m55.610s
sys 14m48.130s



Gingerbreadでは、12m2.785s。   2.3倍   くらい。
RAMの使用は?



ピーク時で   9.1GB
コンスタントに3G中盤~後半あたりは使う。
Ubuntu込みで、RAM 8GBが実用ミニマムだろう。
実際は12GBほしいところ。


4GB台は普通に利用があるので、
4GRAMだとswapしてさらに遅くなる。
必要なCPU数は?


CPUは常に上に張り付いているわけではないけど、
7割くらいはいっぱい。


ビルド環境にシングルコアではお話にならないだろう。

時間かかってもよければ、仮想含めて最低4コア?



普通は   8コアはほしい               。
リポジトリサイズと、ソースコードサイズは?


kinneko@BuildSV: /ICStest$ du -sh ./


9.0G            ./



kinneko@BuildSV: /ICStest$ rm -rf ./*
kinneko@BuildSV: /ICStest$ du -sh ./
4.4G ./

4.6GBがソースコードのサイズか。
ビルドに必要な容量は?

full-engのビルド上がりだと、


kinneko@BuildSV: /ICS$ du -sh ./


22G          ./

Gingerbreadでは、仮想マシンに16GB割り当てれば、
結構余裕があったのに...


複数プロジェクトを維持するには、
結構なディスク容量を必要とするようになりました。
マシンパワーないと
死ぬほどでもない。
でも、やっぱり
「力は正義」
おしまい
おまけ
のりつなたん


うちのノートさんだと、


  -j8
$ make   で、



50m21s        か???

倍増だな。
まごろくさん


         -j 12
$ time make



real   40m28.223s
user 223m53.860s
sys 13m56.310s
6coreなので、40.5mx6=243m ,(223.9+13.9)/243=0.97


CPU使用率97%。メモリ     16G       あると、waitなし。

こっちも倍増です。
てつこばさん


私の環境だとICSのビルドは


  -j8
make     で



36分      。
solaさん


core-   i7 2.8GHz    、



メモリ      16GB で



make    -j8
          した結果は

43m7.136s。
メモリは 9GB くらい使っていた時があった。
(ずっとは見てないので、最大かは不明)
TACさめ



3GHz x 4, 3GB      のマシン

でICSビルドに


j4 で



269分       掛かった.

おそろしや
恐竜先生


make   -j4  。



real   71m6.482s
user 253m49.840s
sys 10m54.710s



RAM    6GB      でもほぼswapせずに完了。

MAX 4.5GBくらいだった。
恐竜先生

-j4でx86ビルドしたら、
swapに1.5Gくらい飛んで進まなくなって涙目。

jarからdex作るところで-Xmx1536Mになってるのが
一番メモリ ってる。
並列数x1.5GBのメモリが必須。
javaプログラムなのでCPUはフルに8スレッド使ってくれてる。


real 102m50.419s
user 344m53.480s
sys 11m38.870s
9GBというのは、1.5GBフルに使うデカブツjar->dex変換が6個
並列するタイミングがあるということか。

More Related Content

What's hot (20)

KEY
Composer による依存管理 と Packagist によるライブラリの公開
Shogo Kawahara
?
PDF
TravisCI Nightに行ってきたので情報展開
Makoto Abe
?
PDF
Cpi mega mix
Ryuji Egashira
?
PDF
恋に落ちるテ?フ?ロイツール
totty jp
?
PPTX
今时の尝颈苍耻虫における骋笔鲍エンコード事情
zgock
?
PDF
最近流行りのビルドツールとは
Takahiro Maki
?
PDF
尝颈苍耻虫のユーザーランドを颈苍颈迟から全てまるごと驳辞濒补苍驳で书く
Tetsuyuki Kobayashi
?
PDF
尘颈苍苍别で学ぶクラウド脳
Uchio Kondo
?
PDF
ルネサスナイト10発表資料 Rubyで作るラムネシュータ
三七男 山本
?
PDF
Ruby関西76 gr citrusの使い方#2
三七男 山本
?
PDF
ET2016 小さなRubyボード GR-CITRUSの紹介
三七男 山本
?
PDF
贰罢2016展示パネル
三七男 山本
?
PDF
リモート先へログインする时环境あるある
Ryota Sakamoto
?
PPTX
搁别苍’辫测の御绍介
zgock
?
PPTX
Osoljp201204
Masataka Tsukamoto
?
PDF
vscode pipenv docker
ikdysfm
?
PDF
Webフレームワークを作ってる話 #osakapy
Masashi Shibata
?
PDF
PIAXで作る P2Pネットワーク
祐司 伊藤
?
PDF
20120731 c4 saリリースパーティlt
Kaz Watanabe
?
PDF
apasec001-kawai
Hidemi Kawai
?
Composer による依存管理 と Packagist によるライブラリの公開
Shogo Kawahara
?
TravisCI Nightに行ってきたので情報展開
Makoto Abe
?
Cpi mega mix
Ryuji Egashira
?
恋に落ちるテ?フ?ロイツール
totty jp
?
今时の尝颈苍耻虫における骋笔鲍エンコード事情
zgock
?
最近流行りのビルドツールとは
Takahiro Maki
?
尝颈苍耻虫のユーザーランドを颈苍颈迟から全てまるごと驳辞濒补苍驳で书く
Tetsuyuki Kobayashi
?
尘颈苍苍别で学ぶクラウド脳
Uchio Kondo
?
ルネサスナイト10発表資料 Rubyで作るラムネシュータ
三七男 山本
?
Ruby関西76 gr citrusの使い方#2
三七男 山本
?
ET2016 小さなRubyボード GR-CITRUSの紹介
三七男 山本
?
贰罢2016展示パネル
三七男 山本
?
リモート先へログインする时环境あるある
Ryota Sakamoto
?
搁别苍’辫测の御绍介
zgock
?
Osoljp201204
Masataka Tsukamoto
?
vscode pipenv docker
ikdysfm
?
Webフレームワークを作ってる話 #osakapy
Masashi Shibata
?
PIAXで作る P2Pネットワーク
祐司 伊藤
?
20120731 c4 saリリースパーティlt
Kaz Watanabe
?
apasec001-kawai
Hidemi Kawai
?

Viewers also liked (12)

PPTX
Chicken Soup Song
Jennifer Cole
?
PPTX
Jinger
Rac Quel Xp
?
PDF
Articulate studio 09 tese
o928070515
?
PPT
virtualdealroom.ent
virtualdealroom
?
PPTX
Room 18 Our Favourite Place
taraprim
?
PDF
Articulate studio 09 tese
o928070515
?
PPT
Chapter 30 cold war slidecast
krallk
?
PPTX
Career Presentation
erikakackmeister
?
PDF
CEDEC2014 自作3D VRコ?ーク?ル"FakeRift"て?はし?めるアフ?リケーション開発
kinneko
?
PPTX
Chapter 30 cold war slidecast
krallk
?
DOC
Juniper policy based filter based forwarding
Mars Chen
?
PDF
スマートフォン?タフ?レットを利用した3顿痴搁システム
kinneko
?
Chicken Soup Song
Jennifer Cole
?
Articulate studio 09 tese
o928070515
?
virtualdealroom.ent
virtualdealroom
?
Room 18 Our Favourite Place
taraprim
?
Articulate studio 09 tese
o928070515
?
Chapter 30 cold war slidecast
krallk
?
Career Presentation
erikakackmeister
?
CEDEC2014 自作3D VRコ?ーク?ル"FakeRift"て?はし?めるアフ?リケーション開発
kinneko
?
Chapter 30 cold war slidecast
krallk
?
Juniper policy based filter based forwarding
Mars Chen
?
スマートフォン?タフ?レットを利用した3顿痴搁システム
kinneko
?
Ad

Similar to 滨颁厂をビルドしてみた (20)

PPTX
WebRTC mediasoup on raspberrypi3
mganeko
?
PDF
础翱厂笔をミラーしてみた
kinneko
?
PDF
ネットワークOS野郎 ~ インフラ野郎Night 20160414
Kentaro Ebisawa
?
PDF
谤耻苍颁概要と使い方
Yuji Oshima
?
PDF
窜测苍辩惭笔勉强会
Hidemi Ishihara
?
PPT
201104016 osc2011 kobe
Yamauchi isamu
?
PDF
Pdp11 on-fpga
magoroku Yamamoto
?
PDF
密着!わたしのコンソールアフ?リ开発环境
Fumihito Yokoyama
?
PPT
Open VZ
Kazuaki Fujikura
?
PDF
Kernel vm-2014-05-25
Hirochika Asai
?
PDF
Raspberry Pi用のコンテナをクラウドでビルドする方法
Shunsuke Kikuchi
?
PDF
狈辞诲别にしましょう
Yuzo Hebishima
?
PDF
InfiniBand on Debian
Taisuke Yamada
?
PDF
贵濒耻别苍迟诲でログを集めて骋濒耻蝉迟别谤贵厂に保存して惭补辫搁别诲耻肠别で集计
maebashi
?
PDF
ドリコム闯别苍办颈苍蝉勉强会资料
Go Sueyoshi (a.k.a sue445)
?
PDF
Bug for Install Linux on Atom Z8700 Portabook ポータブックのLinuxインストールバグ対策 2018 #東海道らぐ
Netwalker lab kapper
?
PDF
そう、UE4ならね。あなたのモバイルゲームをより快適にする沢山の冴えたやり方について Part 2 <Texture Streaming, メモリプロ...
エピック?ゲームズ?ジャパン Epic Games Japan
?
ODP
Programming camp Codereading
Hiro Yoshioka
?
PDF
Firefox mobile for android internals
Makoto Kato
?
KEY
ゆるかわ笔丑辫
Ryota Mochizuki
?
WebRTC mediasoup on raspberrypi3
mganeko
?
础翱厂笔をミラーしてみた
kinneko
?
ネットワークOS野郎 ~ インフラ野郎Night 20160414
Kentaro Ebisawa
?
谤耻苍颁概要と使い方
Yuji Oshima
?
窜测苍辩惭笔勉强会
Hidemi Ishihara
?
201104016 osc2011 kobe
Yamauchi isamu
?
Pdp11 on-fpga
magoroku Yamamoto
?
密着!わたしのコンソールアフ?リ开発环境
Fumihito Yokoyama
?
Kernel vm-2014-05-25
Hirochika Asai
?
Raspberry Pi用のコンテナをクラウドでビルドする方法
Shunsuke Kikuchi
?
狈辞诲别にしましょう
Yuzo Hebishima
?
InfiniBand on Debian
Taisuke Yamada
?
贵濒耻别苍迟诲でログを集めて骋濒耻蝉迟别谤贵厂に保存して惭补辫搁别诲耻肠别で集计
maebashi
?
ドリコム闯别苍办颈苍蝉勉强会资料
Go Sueyoshi (a.k.a sue445)
?
Bug for Install Linux on Atom Z8700 Portabook ポータブックのLinuxインストールバグ対策 2018 #東海道らぐ
Netwalker lab kapper
?
そう、UE4ならね。あなたのモバイルゲームをより快適にする沢山の冴えたやり方について Part 2 <Texture Streaming, メモリプロ...
エピック?ゲームズ?ジャパン Epic Games Japan
?
Programming camp Codereading
Hiro Yoshioka
?
Firefox mobile for android internals
Makoto Kato
?
ゆるかわ笔丑辫
Ryota Mochizuki
?
Ad

More from kinneko (20)

PDF
CloudFormation (CFn)入門(公開用)
kinneko
?
PDF
狠狠撸v マークダウンでサクサク書けるプレゼンツール
kinneko
?
PPTX
5分で作れる! Glideappsではじめる 超簡単PWA
kinneko
?
PDF
金沢尝辞搁补部はじめました(画像版)
kinneko
?
PDF
金沢尝辞搁补部はじめました
kinneko
?
PDF
颁补谤诲产辞补谤诲は日本人向きじゃない!メガネでも使える闯础骋翱痴滨厂翱搁の绍介と日本础苍诲谤辞颈诲の会痴搁部?金沢支部の活动
kinneko
?
PDF
痴搁だって鲍滨は确実に动くアナログ接続のボタンでしょ!
kinneko
?
PDF
3ボタン入力対応! 簡易VRゴーグル- JAGOVISORの設計と実装
kinneko
?
PDF
"Androidを利用した VRゴーグルとその応用"
kinneko
?
PDF
スマホて?て?きるVR @上モノラホ?
kinneko
?
PDF
Unityを使ったVRアフ?リ作成入門 ABCD2015金沢編
kinneko
?
PDF
Part3 unityを使ったvrアフ?リ作成入門
kinneko
?
PDF
FakeRiftとtaovisorをやってみてわかったこと ABC2014w版
kinneko
?
PDF
BeagleBone Blackて?Androidの下回りを学ほ?う (公開版)
kinneko
?
PDF
ねえ、“えぬふぃ?”て?占いしない?
kinneko
?
PDF
中華チップ全盛時代のARM SoCの選び方_公開版
kinneko
?
PDF
X86アーキテクチャ 対応の現状と将来
kinneko
?
PDF
Android x86プロジェクトの最近の状況 pf20111218
kinneko
?
PDF
“夏前にすぐに痩せるRam diet!” もしくは 「老頭児組込みエンジニアの苦悩」 (中継無し) パート1 公開版
kinneko
?
PDF
Pandaboardで ubuntu tvしてみる?
kinneko
?
CloudFormation (CFn)入門(公開用)
kinneko
?
狠狠撸v マークダウンでサクサク書けるプレゼンツール
kinneko
?
5分で作れる! Glideappsではじめる 超簡単PWA
kinneko
?
金沢尝辞搁补部はじめました(画像版)
kinneko
?
金沢尝辞搁补部はじめました
kinneko
?
颁补谤诲产辞补谤诲は日本人向きじゃない!メガネでも使える闯础骋翱痴滨厂翱搁の绍介と日本础苍诲谤辞颈诲の会痴搁部?金沢支部の活动
kinneko
?
痴搁だって鲍滨は确実に动くアナログ接続のボタンでしょ!
kinneko
?
3ボタン入力対応! 簡易VRゴーグル- JAGOVISORの設計と実装
kinneko
?
"Androidを利用した VRゴーグルとその応用"
kinneko
?
スマホて?て?きるVR @上モノラホ?
kinneko
?
Unityを使ったVRアフ?リ作成入門 ABCD2015金沢編
kinneko
?
Part3 unityを使ったvrアフ?リ作成入門
kinneko
?
FakeRiftとtaovisorをやってみてわかったこと ABC2014w版
kinneko
?
BeagleBone Blackて?Androidの下回りを学ほ?う (公開版)
kinneko
?
ねえ、“えぬふぃ?”て?占いしない?
kinneko
?
中華チップ全盛時代のARM SoCの選び方_公開版
kinneko
?
X86アーキテクチャ 対応の現状と将来
kinneko
?
Android x86プロジェクトの最近の状況 pf20111218
kinneko
?
“夏前にすぐに痩せるRam diet!” もしくは 「老頭児組込みエンジニアの苦悩」 (中継無し) パート1 公開版
kinneko
?
Pandaboardで ubuntu tvしてみる?
kinneko
?

Recently uploaded (9)

PDF
論文紹介:Unbiasing through Textual Descriptions: Mitigating Representation Bias i...
Toru Tamaki
?
PDF
安尾 萌, 藤代 裕之, 松下 光範. 協調的情報トリアージにおけるコミュニケーションの影響についての検討, 第11回データ工学と情報マネジメントに関する...
Matsushita Laboratory
?
PDF
SIG-AUDIO 2025 Vol.02 オンラインセミナー 「GDC2025 オーディオ報告会」SIG-Audio_GDC2024_報告会資料_増野さ...
IGDA Japan SIG-Audio
?
PDF
論文紹介:AutoPrompt: Eliciting Knowledge from Language Models with Automatically ...
Toru Tamaki
?
PDF
安尾 萌, 松下 光範. 環境馴致を計量可能にするための試み,人工知能学会第4回仕掛学研究会, 2018.
Matsushita Laboratory
?
PDF
安尾 萌, 北村 茂生, 松下 光範. 災害発生時における被害状況把握を目的とした情報共有システムの基礎検討, 電子情報通信学会HCGシンポジウム2018...
Matsushita Laboratory
?
PDF
SIG-AUDIO 2025 Vol.02 オンラインセミナー 「GDC2025 オーディオ報告会」SIG-Audio_GDC2025_報告会資料_渡辺さ...
IGDA Japan SIG-Audio
?
PDF
API認可を支えるKeycloakの基本と設計の考え方 ~ OAuth/OIDCによるAPI保護のベストプラクティス ~
Hitachi, Ltd. OSS Solution Center.
?
PDF
マルチAIエージェントの産業界での実践に向けたオープンソース活動の展望 - Japan Regional User Group (RUG) Meet-Up
Kosaku Kimura
?
論文紹介:Unbiasing through Textual Descriptions: Mitigating Representation Bias i...
Toru Tamaki
?
安尾 萌, 藤代 裕之, 松下 光範. 協調的情報トリアージにおけるコミュニケーションの影響についての検討, 第11回データ工学と情報マネジメントに関する...
Matsushita Laboratory
?
SIG-AUDIO 2025 Vol.02 オンラインセミナー 「GDC2025 オーディオ報告会」SIG-Audio_GDC2024_報告会資料_増野さ...
IGDA Japan SIG-Audio
?
論文紹介:AutoPrompt: Eliciting Knowledge from Language Models with Automatically ...
Toru Tamaki
?
安尾 萌, 松下 光範. 環境馴致を計量可能にするための試み,人工知能学会第4回仕掛学研究会, 2018.
Matsushita Laboratory
?
安尾 萌, 北村 茂生, 松下 光範. 災害発生時における被害状況把握を目的とした情報共有システムの基礎検討, 電子情報通信学会HCGシンポジウム2018...
Matsushita Laboratory
?
SIG-AUDIO 2025 Vol.02 オンラインセミナー 「GDC2025 オーディオ報告会」SIG-Audio_GDC2025_報告会資料_渡辺さ...
IGDA Japan SIG-Audio
?
API認可を支えるKeycloakの基本と設計の考え方 ~ OAuth/OIDCによるAPI保護のベストプラクティス ~
Hitachi, Ltd. OSS Solution Center.
?
マルチAIエージェントの産業界での実践に向けたオープンソース活動の展望 - Japan Regional User Group (RUG) Meet-Up
Kosaku Kimura
?

滨颁厂をビルドしてみた