ICSのミラー終わったのでビルドしてみた

基本は、前に同じ環境でやったGingerbreadとの比較。
マシンスペックは、Core i7 980 3.33GHz/RAM12GB/Ubuntu11.04(natty)。
ちなみに、11.10ではまだビルドできないそう。推奨はLTS付きの10.04のまま。

$ du -sh /home/kinneko/AOSP/
8.1G	/home/kinneko/AOSP/

えっと、確か、GBまでは3.3GBくらいだったような...
激太りだよ。もうダメだ。

kinneko@BuildSV:~/ICS$ ../repo init -u /home/kinneko/AOSP/platform/manifest.git -b android-4.0.1_r1
kinneko@BuildSV:~/ICS$ time ../repo sync 

fetchするプロジェクトは221個。
GBは170だったので、だいぶ増えている。
当然ながらsyncの時間も長くなる。
GBのときは、real 2m12.760sだったけど。

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

3倍以上だよ...
これだと、とてもネット経由で単体syncやる気にならないな...
鯖側の負荷もバカにならないだろうし、ミラーシステムが先に整備されるわけだ。
そろそろ、重いターゲット部分は分離式にしたほうがいいのじゃないだろうか。


ビルドしてみる。

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

GBでは、real 12m2.785s。2.3倍くらい。
RAMの使用は、ピーク時で9.1GB。
コンスタントに3G中盤〜後半あたりは使う。
Ubuntu込みで、RAM 8GBが実用ミニマムだろう。
実際は12GBほしいところ。
4GB台は普通にあるので、4GRAMだとswapしてさらに遅くなる。


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	./

というわけで、ICSのソース規模は4..6GBでありました。
.repoは4.4GB。
ファイル置き場に9GB必要です。
full-engのビルド上がりは22GBでした。