twitter icon   twitter icon   rss icon

Linux.com Japan

Home Linux Jp チュートリアル BeagleBone Black パート2 : Linux 性能テスト

BeagleBone Black パート2 : Linux 性能テスト

原文はこちらです。

訳注:この原文は、2013 年 7 月に公開されました。少し古いですが、同著者の BBB シリーズの BeagleBone Black 入門編として訳出しました。

BeagleBone Black

前回、BBB事始め:45ドルで買える1GHzのARM Linuxマシンと題して、BBB を紹介しました。これは、512Mb の RAM、2Gb の eMMC フラッシュ メモリを搭載した 1GHz ARM Coretex-A8 ボードです。今回は、この小さなマシンの性能を測定します。

eMMC フラッシュ メモリから始めましょう。2Gb のフラッシュ メモリは、BBB と Raspberry Pi の違いのひとつです。Bonnie は、ディスク キャッシュがベンチマーク結果に影響しないように、システム上に搭載メモリ量の 2 倍のファイルを作成します。しかし、BBB は 512Mb の RAM を搭載していますが、標準の Angstrom インストールでは、eMMC 上に 500Mb の空き領域しかありません。そこで、作成するファイルの容量をパラメータで 200Mb に制限しました。

user@bbb:~/test$ /sbin/bonnie++ -f -m bbb-emmc -d `pwd`
Writing intelligently...Can't write block.
Bonnie: drastic I/O error (write(2)): No such file or directory
user@bbb:~/test$ /sbin/bonnie++ -f -m bbb-emmc -s 200 -r 100 -d `pwd` 

結果は、シーケンシャル・アウトプットが約 4.2Mb/s, 再書き込みが約 4.5Mb/s, そして、シーケンシャル・インプットが 206Mb/s でした。ファイルがメモリにキャッシュされているため、インプットの結果は正しくないと思われます。ODroid-U2クアッドコアARMマシンにおける測定結果は、eMMC フラッシュ上で、シーケンシャル・アウトプットが 16Mb/s、再書き込みが 12Mb/s でした。これは、マウント オプション: rw, relatime,data=ordered でマウントした ext4 ファイルシステム上での測定結果です。

Openssl スピード テスト

BBB上で、openssl 1.0.1e をコンパイルしました。21.5 分かかりました。ODroid-U2 quad core ARM 上では、同じコードのコンパイルに 4 分、インテル 2600k では、1 分弱でコンパイルできました。これらのプラットフォームでコンパイルするのに、違うバージョンの gcc を使いました。

      BBB: gcc version 4.7.3 20130205 (prerelease) (Linaro GCC 4.7-2013.02-01) 
ODroid-U2: gcc (Ubuntu/Linaro 4.6.3-1ubuntu5) 4.6.3
Fedora-18: gcc (GCC) 4.7.2 20121109 (Red Hat 4.7.2-8)

openssl スピード テストは、マシンのシングルコアのみを使います。BBB にとっては問題ありませんが、3 つのコアを持つ ODroido-U2 の場合、残りのコアが無駄になります。BBB と ODroid-U2 の openssl スピードテストの結果を見ると、1 コアのスピードの 50-75% になっています。

77%  1024 byte aes-256 cbc
73%  1024 byte md5
67%  1024 byte sha1
50%  1024 bit RSA sign
52%  1024 bit RSA verify

2d グラフィックと Web ブラウジング テスト

Cairo Performance Demos のバージョン 1.0.1 を使って、2d グラフィック性能を測定しました。いくつかのテストを含みます。chart は、4 本の線グラフを描画します。fish は、多数の魚が泳ぐ水槽をシミュレーションします。gradient は、画面上を動き回る曲線を描画します。flowers は、画面上を上下しながら回転する多数の花を描画します。1 つは 2560 x 1400、他方は 1080p の 2 個のディスプレイをドライブする NVidia GTX 570 カードを搭載した Intel 2600K CPU デスクトップ マシンと比較しました。

           BBB fps    desktop 2600k/nv570
           at 720p    two screns.
  gears      26          140
  chart       2           16
   fish       4          188
gradient     10          117
flowers       1          170

  Web ブラウジング性能測定用に、両方のマシンで Firefox を使い、Octane Javascript benchmark を実行しました。Intel 2600K は、予想通り 9667 の最高性能を出しました。次に、ODroid-U2 での値は、1411、BBB でのそれは 367 でした。これは、ODroid-U2 の 26% の性能です。個々のテストで、BBB は ODroid-U2 のほぼ 30% の性能を出しました。EarleyBoyer、NavierStokes、および Raytrace は例外的に ODroid-U2 の 13-14% でした。

Port をいじる

 ハードウェアをいじりたい人にとって、Beagle Bone Black は最適なマシンです。他のハードウェアと接続可能なポートは魅力的ですし、フルセットの Linux から制御することができます。フルセットの Linux を実行させて、小さく安価なLCDスクリーンを通常のフレームバッファを通して使うことができます。Cron ジョブを実行して、定期的にハードウェアを叩き、データを eMMC に記録し、Web で表示させることができます。

安価な LCD パネルを BBB とつないでいろいろ実験するのは、Arduino で実験するよりいじりがいがあります。Aruduino から LCD を制御するためには、ハードウェア制御のライブラリの導入と、Arduino にアップロードするプログラムのコンパイルが必要です。プログラム内で、LCD に情報を表示するためのドライバのライブラリが提供する API を使用します。さらに、スクリーンをフレームバッファを通して利用するために、カーネルの再コンパイルとパッチの適用が必要になります。

一方、BBB の場合、フレームバッファのセットアップが完了すれば、シリアルペリフェラルインタフェース (SPI) バスを通した通信のような低レベルの処理は、アプリケーションには抽象化された形で見えます。ですから、Qt/QML、EFL、GTK や Cairo のようなアプリケーション作りに専念することができます。アプリケーションがディスプレイ解像度に対応している限り、デスクトップ Linux ディスプレイ用のユーザー インタフェース コードを BBB 上の SPI を使った LCD ディスプレイに移植する労力は、あまり必要ないはずです。


Linux Foundationについて

Linux Foundation はLinux の普及,保護,標準化を進めるためにオープンソース コミュニティに資源とサービスを提供しています

 

The Linux Foundation Japan

サイトマップ

問い合わせ先

サイトに関するお問い合わせはこちらまで

Linux Foundation Japan

Linux Foundation

Linux Training

提案、要望

Linux.com JAPANでは広く皆様の提案、要望、投稿を受け付ける予定です。

乞うご期待!