動機
最近、顔認識系の工作を始めているのですが、所有しているRaspberry Pi 3 だとOpenCVの応答速度が非常に遅かったため、この期に以前から気になっていたRaspberry Pi 4 を購入しました。
注意点
・Raspberry Pi4 には、メモリの大小でバリエーションがあります。2G、4G、8G。
・画面への出力には、MicroHDMIケーブルが必要です。通常のHDMIでは接続できないので、変換アダプタが必要となります。
・電源はUSB-TypeCで供給します(Pi3では、TypeAでした)
買ったもの
今回はAmazonさんで普通に購入しました。
せっかくなので、現時点で最高スペックの、メモリ8Gのバージョンを購入。
スタートアップキットもありましたが、いろいろついて割高っぽく、手持ちの部品もあるので、付属品は別購入としました。 ケースは、以下を購入。
開封の儀
速度比較…いまいち遅くないか…?
Pi3に比べてメモリ量が桁違いなので、ノートPCのような応答を想像していたのですが、実際に動かしてみるとPi3とそれほど変わりなく、Chromeブラウザの起動・タブ追加も、もっさり感が…。
少し調べたところではMicroSDカードのアプリケーションクラスによって応答速度が結構違うという話があり、急いでA2のカードを購入しました。
ただ、これでも大きな差は感じられず…。期待しすぎなのかな…。
ベンチマーク
体感だけだとわからないので、ベンチマークで値比較をすることにしました。 使用したのは、byte-UnixBench です。
導入・実行方法
ターミナル画面で以下のコマンドを実行し、ソースのダウンロードとビルドを実行します。
# git clone https://github.com/kdlucas/byte-unixbench.git # cd byte-unixbench # cd UnixBench # make
終了後、以下のコマンドでベンチマークを実行します。
./Run
実行結果
以下のとおりでした(左が、右が)
各指標は、上からの順で、以下の通りです。
- Dhrystone 2 using register variables
2つのレジスタを使ってシステム(整数)プログラミングの性能 - Double-Precision Whetstone
浮動小数点演算性能 - Execl Throughput
関数の呼び出し性能 - File Copy 1024 bufsize 2000 maxblocks
ファイルのコピー(バッファサイズ1024バイト) - File Copy 256 bufsize 500 maxblocks
ファイルのコピー(バッファサイズ256バイト) - File Copy 4096 bufsize 8000 maxblocks
ファイルのコピー(バッファサイズ4096バイト) - Pipe Throughput
パイプ処理のスループット - Pipe-based Context Switching
パイプベースのコンテキストのスイッチング処理 - Process Creation
プロセス作成 - System Call Overhead
システムコールでのオーバーヘッド - Shell Scripts (1 concurrent)
1つだけシェルスクリプトの実行 - Shell Scripts (8 concurrent)
8つ同時にシェルスクリプトの実行
伸び幅が低いのはともかく、Pi3よりも低いところがある原因がわからない…。
メモリ量 1G->8Gで、CPU性能も向上しているはずなのに、下がることなんてあるんだっけ…。
今回は以上となります。