2010年11月25日木曜日

BeagleBoard-xMのAndroid起動microSDのパーティションをSD Cardとして認識させる

昨日のベンチマークの引き続きのためにmicroSDを探して部屋中ひっかきまわしていた隠者です。こんばんは。いやぁ・・・・みつかりませんでした。これは買わないとだめかな。

さて、そのようなわけで、今夜はベンチマークの続きではなく、中間でちょっと小技をひとつ。@himamuraさんが集めてるベンチマークを行うソフトの0xBenchmarkは、SD Cardが挿入されてると実行結果をテキストとXMLとに残してくれます。

ところが、beagleBoar-xMには、NORやNANDはありません。そのためAndroidの起動ディスクとしてmicroSDを使う事になります。

少しサイズの大きめなmicroSDカードを用意して、起動ディスクの他、SDカードとしても認識させてしまいましょう。

fdiskを使ってコマンドベースで起動用にmicroSDを設定し直す方法は、@pakuqi さんがブログにまとめて下さっています。
さて、この手順の中で領域を切るときに、64MBをMLO,u-boot,kernel用のFAT32領域、残りをすべてユーザーランド用にext3にされています。
が、例えば4GBのmicroSDなら、ユーザーランドとしてext3にするのは、2GB程度として、残りはすべてSDカード領域用にFAT32にして下さい。

え?手順?fdiskにはヘルプもあるし古くから使われているので、Google先生に聞いてもいいでしょう。僕はPF部の他の方々のようには優しくはなく、手取り足取り書き記す気はありませんのであしからず。

パーティションとしては
  1. FAT32 64MB (起動用)
  2. EXT3   2GB   (ユーザーランド用)
  3. FAT32 残りすべて (SD CARD領域)
という形にします。基本領域3もmkfs.vfatで初期化して下さい。

その後、ユーザーランドの /system/etc/vold.fstab に以下のような設定を追記します。


dev_mount sdcard /sdcard 3 /devices/platform/mmci-omap-hs.0 /devices/platform/mmci-omap-hs.0/mmc_host/mmc0

この設定でパーティション3をSDカードの領域として認識してマウントしてくれるはずです。お試しください。

2010年11月24日水曜日

BeagleBoard-xMのベンチマーク結果

大変長いことご無沙汰しておりました、hermit4です。
ネタは色々尽きないもののなかなか時間が取れませんで。全然更新されてないじゃんって怒られたので、 @himamura さんにPF部でお願いされていた、Beagle Board-XMのAndroidでのベンチマークを実施しました。

ちなみに、@himamura さんは、色々なデバイスをベンチマークとって下さりまとめてくださってます。
なお、今回の環境は、@sola_dolphin_1さんのfroyoを動かしやすいようにgithubにいれてくださって手順もまとめてくださっているので、基本的にそちらの手順に従って作成したものです(一部スクリプト部分については、手作業でやってますけど)。

使用したmicroSDは、SanDiskのものですが、残念ながら低速なclass 2の品です。いや、どこかに早いやつを数枚確保してあったはずなのですが、どのダンボールにしまってしまったのか発見できず・・・・・今夜家に帰って探しだせたら、ついでなのでそれぞれでベンチマーク比較してみたいなぁと思います。

結果は以下のとおりです。面倒なのでテキストをそのまま貼り付けます。XMLはグーグルドキュメントに置いてhimamuraさんにD飛ばしておいたので、近いうちにhimamuraさんの表に反映してもらえるかなぁとか思ってます。

Linpackの結果はあまり芳しくないように見えます。SGXを入れると描画周りでは改善が見られますけど・・・・これは満足出来る結果と言い切れるかどうか。

・TI's Android SGX SDKなし
============================================================

Linpack
------------------------------------------------------------
Mflops/s :9.437201527000578
Norm Res :1.7100673392687894E14
Precision:2.220446049250313E-16
============================================================
Scimark2
------------------------------------------------------------
Composite:
  13.017866789720463
Fast Fourier Transform:
  8.362614298864644
Jacobi Successive Over-relaxation:
  22.74927993955477
Monte Carlo integration:
  3.5335332771692993
Sparse matrix multiply:
  11.804034582132472
dense LU matrix factorization:
  18.63987185088113
============================================================
Draw Canvas
------------------------------------------------------------
Round 0 fps = 26.645351
Round 1 fps = 26.534584
Round 2 fps = 26.586315
Average: fps = 26.0
============================================================
Draw Circle
------------------------------------------------------------
Round 0: fps = 17.958694
Round 1: fps = 18.061409
Round 2: fps = 17.919006
Average: fps = 17.333334
============================================================
Draw Circle2
------------------------------------------------------------
Round 0: fps = 27.795794
Round 1: fps = 28.506271
Average: fps = 27.5
============================================================
Draw Rect
------------------------------------------------------------
Round 0: fps = 16.717749
Round 1: fps = 17.554125
Round 2: fps = 16.478989
Average: fps = 16.333334
============================================================
Draw Arc
------------------------------------------------------------
Round 0: fps = 23.337223
Round 1: fps = 23.331778
Average: fps = 23.0
============================================================
Draw Image
------------------------------------------------------------
Round 0: fps = 25.04759
Round 1: fps = 25.046337
Average: fps = 25.0
============================================================
Draw Text
------------------------------------------------------------
Round 0: fps = 21.483816
Round 1: fps = 21.457693
Round 2: fps = 21.217909
Average: fps = 21.0
==================OpenGL Cube
------------------------------------------------------------
Round 0: fps = 29.707972
Round 1: fps = 29.665668
Round 2: fps = 29.6349
Average: fps = 29.0
============================================================
OpenGL Blending
------------------------------------------------------------
Round 0: fps = 13.765573
Round 1: fps = 13.761972
Average: fps = 13.763773
============================================================
OpenGL Fog
------------------------------------------------------------
Round 0: fps = 14.064105
Round 1: fps = 14.110342
Average: fps = 14.087223
============================================================
Flying Teapot
------------------------------------------------------------
Round 0: fps = 24.663345
Round 1: fps = 23.784607
Average: fps = 24.223976
============================================================
Garbage Collection
------------------------------------------------------------
Stretching memory:
    binary tree of depth 16
*Total memory:4071392 bytes
*Free  memory:1238152 bytes


Creating:
    long-lived binary tree of depth 14
    long-lived array of 125000 doubles
*Total memory:7479264 bytes
*Free  memory:2709896 bytes


Create 37448 trees of depth 2
- Top down: 948msecs
- Bottom up: 984msecs
Create 8456 trees of depth 4
- Top down: 1015msecs
- Bottom up: 987msecs
Create 2064 trees of depth 6
- Top down: 1015msecs
- Bottom up: 930msecs
Create 512 trees of depth 8
- Top down: 950msecs
- Bottom up: 985msecs
*Total memory:7479264 bytes
*Free  memory:2212904 bytes


Completed in 8992ms.
=========================================



・TI's Android SGX SDKあり

============================================================
Linpack
------------------------------------------------------------
Mflops/s :9.300885244349358
Norm Res :1.7100673392687894E14
Precision:2.220446049250313E-16
============================================================
Scimark2
------------------------------------------------------------
Composite:
  12.901394988451766
Fast Fourier Transform:
  8.276270877619176
Jacobi Successive Over-relaxation:
  23.01006648834552
Monte Carlo integration:
  3.5054776431257824
Sparse matrix multiply:
  11.034482758620722
dense LU matrix factorization:
  18.680677174547643
============================================================
Draw Canvas
------------------------------------------------------------
Round 0 fps = 60.950832
Round 1 fps = 61.000404
Round 2 fps = 61.27451
Average: fps = 60.666668
============================================================
Draw Circle
------------------------------------------------------------
Round 0: fps = 26.071087
Round 1: fps = 26.399155
Round 2: fps = 26.403801
Average: fps = 26.0
============================================================
Draw Circle2
------------------------------------------------------------
Round 0: fps = 55.126793
Round 1: fps = 55.370983
Average: fps = 55.0
============================================================
Draw Rect
------------------------------------------------------------
Round 0: fps = 22.381378
Round 1: fps = 23.085802
Round 2: fps = 24.789291
Average: fps = 23.0
============================================================
Draw Arc
------------------------------------------------------------
Round 0: fps = 39.1604
Round 1: fps = 38.898396
Average: fps = 38.5
============================================================
Draw Image
------------------------------------------------------------
Round 0: fps = 42.448425
Round 1: fps = 42.21547
Average: fps = 42.0
============================================================
Draw Text
------------------------------------------------------------
Round 0: fps = 33.564556
Round 1: fps = 33.26311
Round 2: fps = 33.59839
Average: fps = 33.0
============================================================
Linpack
------------------------------------------------------------
Mflops/s :9.300885244349358
Norm Res :1.7100673392687894E14
Precision:2.220446049250313E-16
============================================================
Scimark2
------------------------------------------------------------
Composite:
  12.901394988451766
Fast Fourier Transform:
  8.276270877619176
Jacobi Successive Over-relaxation:
  23.01006648834552
Monte Carlo integration:
  3.5054776431257824
Sparse matrix multiply:
  11.034482758620722
dense LU matrix factorization:
  18.680677174547643
============================================================
Draw Canvas
------------------------------------------------------------
Round 0 fps = 60.950832
Round 1 fps = 61.000404
Round 2 fps = 61.27451
Average: fps = 60.666668
============================================================
Draw Circle
------------------------------------------------------------
Round 0: fps = 26.071087
Round 1: fps = 26.399155
Round 2: fps = 26.403801
Average: fps = 26.0
============================================================
Draw Circle2
------------------------------------------------------------
Round 0: fps = 55.126793
Round 1: fps = 55.370983
Average: fps = 55.0
============================================================
Draw Rect
------------------------------------------------------------
Round 0: fps = 22.381378
Round 1: fps = 23.085802
Round 2: fps = 24.789291
Average: fps = 23.0
============================================================
Draw Arc
------------------------------------------------------------
Round 0: fps = 39.1604
Round 1: fps = 38.898396
Average: fps = 38.5
============================================================
Draw Image
------------------------------------------------------------
Round 0: fps = 42.448425
Round 1: fps = 42.21547
Average: fps = 42.0
============================================================
Draw Text
------------------------------------------------------------
Round 0: fps = 33.564556
Round 1: fps = 33.26311
Round 2: fps = 33.59839
Average: fps = 33.0


2010/12/06 追記
暇村村長さんの日記が現在トラブルで表示できないようなので、BeagleBoardだけ表にしておきます。
設定 Android 2.2
SGX Driver
Android 2.2
Linpack
Mflops
9.30 9.43
Compo
site
12.90 13.02
FFT 8.28 8.36
SOR 23.01 22.75
Monte
Carlo
3.51 3.53
Sparse
Mult
11.03 11.80
LU 18.68 18.64
Draw Canvas 60.67 26.00
Circle 26.00 17.33
Circle2 55.00 27.50
Rect 23.00 16.33
Arc 38.50 23.00
Image 42.00 25.00
Text 33.00 21.00
Cube 60.00 29.00
OpenGL Blending 65.74 13.79
Fog 65.60 14.09
Flying
Teapod
60.60 24.22
Gabage
Collection
8961.00 8992.00