【徹底比較】Raspberry Pi 4は2GB、4GB、8GBどれを選ぶ?

【徹底比較】Raspberry Pi 4は2GB、4GB、8GBどれを選ぶ?
  • 4GBと8GBの違いが分からない
  • 性能も大事だけど、お金はかけたくない
  • そもそもメモリがよく分からない

Raspberry Pi 4メモリ(RAM)2GB、4GB、8GBの3種類が用意されています。メモリの数値以外は全く同じ仕様のため、どれを選ぶべきか迷うと思います。

この記事ではさまざまなテストを通して、3種類のRaspberry Pi 4の性能を比較します。

この記事を読めば、自分の選ぶべきモデルが分かるはずです。

この記事の結論

複数の作業を同時に行うような使い方をしない限り、性能に大差はありません。初心者は2GBモデルがおすすめです。ただ現時点で、2GBモデルは入手が難しい状況です。販売していない場合は、比較的流通量の多い4GBモデルを狙いましょう。

Raspberry Pi 4はメモリが3種類

3種類のRaspberry Pi 4

Raspberry Pi 4はメモリが3種類用意されています。その他の仕様は全く同じで、メモリの数値だけが違います。海外では1GBモデルも存在しますが、日本で発売されていません。

メモリによる価格差

2022年8月時点でのスイッチサイエンスでの価格をまとめました。

メモリ参考価格
Raspberry Pi 4
2GB
8,360円
Raspberry Pi 4
4GB
9,702円
Raspberry Pi 4
8GB
13,090円

2GBと4GBモデルの価格差は約1,500円ですが、4GBと8GBモデルでは価格差が約3,000円となっています。8GBモデルは高額な印象が強いです。

メモリは作業スペース

そもそもメモリって何?

メモリを簡単に説明すると、コンピュータが仕事をするときに使う作業スペースの広さのことです。作業スペースが広い(メモリが大きい)と同時にたくさんの処理ができて、作業スピードが速くなります

メモリが大きいからといって、写真や音楽などが大量に保存できるというわけではありません。写真や音楽などのデータを保存しておく場所は、ストレージと呼ばれています。

そぞら
そぞら

ラズベリーパイの場合、ストレージはmicroSDカードに該当します。

カタログの数値を見ただけでは、性能の違いは分かりにくいです。ここからは実機を使ったテストにより、それぞれのパフォーマンスを比較します。

ベンチマーク比較

コンピュータに一定の負荷をかけて性能を計測し、数値化することをベンチマークと呼びます。ラズパイでベンチマークテストを行うときはUnixBenchというソフトを使用するのが一般的です。

UnixBenchは以下のコマンドでインストールできます。

git clone https://github.com/kdlucas/byte-unixbench

UnixBenchを実行するには、まず以下のコマンドでUnixBenchのディレクトリに移動します。

cd byte-unixbench/UnixBench

その後、以下のコマンドを実行すると計測が開始されます。

./Run

計測は1時間程度かかるので、気長に待ちます。

UnixBench計測中の様子

3つのモデルのテスト結果は以下の通りです。

ベンチマークテスト結果

テスト結果はシングルコアマルチコアで表示されます。CPUで処理を行う部分をコアといいます。コアの数が多いほど高速な処理が可能です。Raspberry Pi 4のコア数は4つですが、テストにより1つのコア(シングルコア)を使用した結果と、4つのコア(マルチコア)を使用した結果の2種類が算出されます。

数値から判断すると、4GBと8GBはあまり変わらない結果になりました。特にシングルコアではほぼ同じ結果です。コスパを考えると4GBが優位といえます。

詳細のテスト結果は以下の通りです。

2GBのスコア

4 CPUs in system; running 1 parallel copy of tests

Dhrystone 2 using register variables       10348537.8 lps   (10.0 s, 7 samples)
Double-Precision Whetstone                     2519.9 MWIPS (9.9 s, 7 samples)
Execl Throughput                                787.4 lps   (30.0 s, 2 samples)
File Copy 1024 bufsize 2000 maxblocks         92709.0 KBps  (30.0 s, 2 samples)
File Copy 256 bufsize 500 maxblocks           26116.4 KBps  (30.0 s, 2 samples)
File Copy 4096 bufsize 8000 maxblocks        259074.0 KBps  (30.0 s, 2 samples)
Pipe Throughput                               81001.9 lps   (10.0 s, 7 samples)
Pipe-based Context Switching                  26359.0 lps   (10.0 s, 7 samples)
Process Creation                                959.4 lps   (30.0 s, 2 samples)
Shell Scripts (1 concurrent)                   2389.4 lpm   (60.0 s, 2 samples)
Shell Scripts (8 concurrent)                    648.2 lpm   (60.0 s, 2 samples)
System Call Overhead                         424921.3 lps   (10.0 s, 7 samples)

System Benchmarks Index Values               BASELINE       RESULT    INDEX
Dhrystone 2 using register variables         116700.0   10348537.8    886.8
Double-Precision Whetstone                       55.0       2519.9    458.2
Execl Throughput                                 43.0        787.4    183.1
File Copy 1024 bufsize 2000 maxblocks          3960.0      92709.0    234.1
File Copy 256 bufsize 500 maxblocks            1655.0      26116.4    157.8
File Copy 4096 bufsize 8000 maxblocks          5800.0     259074.0    446.7
Pipe Throughput                               12440.0      81001.9     65.1
Pipe-based Context Switching                   4000.0      26359.0     65.9
Process Creation                                126.0        959.4     76.1
Shell Scripts (1 concurrent)                     42.4       2389.4    563.5
Shell Scripts (8 concurrent)                      6.0        648.2   1080.4
System Call Overhead                          15000.0     424921.3    283.3
                                                                   ========
System Benchmarks Index Score                                         253.1

------------------------------------------------------------------------
Benchmark Run: 月  8月 15 2022 23:54:05 - 00:22:32
4 CPUs in system; running 4 parallel copies of tests

Dhrystone 2 using register variables       40741654.9 lps   (10.0 s, 7 samples)
Double-Precision Whetstone                     9934.9 MWIPS (10.0 s, 7 samples)
Execl Throughput                               2437.6 lps   (29.7 s, 2 samples)
File Copy 1024 bufsize 2000 maxblocks        245963.6 KBps  (30.0 s, 2 samples)
File Copy 256 bufsize 500 maxblocks           69001.3 KBps  (30.0 s, 2 samples)
File Copy 4096 bufsize 8000 maxblocks        710659.6 KBps  (30.0 s, 2 samples)
Pipe Throughput                              310225.1 lps   (10.0 s, 7 samples)
Pipe-based Context Switching                  95736.4 lps   (10.0 s, 7 samples)
Process Creation                               4857.0 lps   (30.0 s, 2 samples)
Shell Scripts (1 concurrent)                   5287.7 lpm   (60.0 s, 2 samples)
Shell Scripts (8 concurrent)                    699.9 lpm   (60.1 s, 2 samples)
System Call Overhead                        1640864.7 lps   (10.0 s, 7 samples)

System Benchmarks Index Values               BASELINE       RESULT    INDEX
Dhrystone 2 using register variables         116700.0   40741654.9   3491.1
Double-Precision Whetstone                       55.0       9934.9   1806.3
Execl Throughput                                 43.0       2437.6    566.9
File Copy 1024 bufsize 2000 maxblocks          3960.0     245963.6    621.1
File Copy 256 bufsize 500 maxblocks            1655.0      69001.3    416.9
File Copy 4096 bufsize 8000 maxblocks          5800.0     710659.6   1225.3
Pipe Throughput                               12440.0     310225.1    249.4
Pipe-based Context Switching                   4000.0      95736.4    239.3
Process Creation                                126.0       4857.0    385.5
Shell Scripts (1 concurrent)                     42.4       5287.7   1247.1
Shell Scripts (8 concurrent)                      6.0        699.9   1166.4
System Call Overhead                          15000.0    1640864.7   1093.9
                                                                   ========
System Benchmarks Index Score                                         767.1

4GBのスコア

4 CPUs in system; running 1 parallel copy of tests

Dhrystone 2 using register variables       12410229.0 lps   (10.0 s, 7 samples)
Double-Precision Whetstone                     3023.2 MWIPS (9.9 s, 7 samples)
Execl Throughput                                948.7 lps   (29.9 s, 2 samples)
File Copy 1024 bufsize 2000 maxblocks        110324.8 KBps  (30.0 s, 2 samples)
File Copy 256 bufsize 500 maxblocks           31434.7 KBps  (30.0 s, 2 samples)
File Copy 4096 bufsize 8000 maxblocks        295157.3 KBps  (30.0 s, 2 samples)
Pipe Throughput                               97483.1 lps   (10.0 s, 7 samples)
Pipe-based Context Switching                  32143.8 lps   (10.0 s, 7 samples)
Process Creation                               1094.0 lps   (30.0 s, 2 samples)
Shell Scripts (1 concurrent)                   2798.0 lpm   (60.0 s, 2 samples)
Shell Scripts (8 concurrent)                    765.1 lpm   (60.1 s, 2 samples)
System Call Overhead                         506450.2 lps   (10.0 s, 7 samples)

System Benchmarks Index Values               BASELINE       RESULT    INDEX
Dhrystone 2 using register variables         116700.0   12410229.0   1063.4
Double-Precision Whetstone                       55.0       3023.2    549.7
Execl Throughput                                 43.0        948.7    220.6
File Copy 1024 bufsize 2000 maxblocks          3960.0     110324.8    278.6
File Copy 256 bufsize 500 maxblocks            1655.0      31434.7    189.9
File Copy 4096 bufsize 8000 maxblocks          5800.0     295157.3    508.9
Pipe Throughput                               12440.0      97483.1     78.4
Pipe-based Context Switching                   4000.0      32143.8     80.4
Process Creation                                126.0       1094.0     86.8
Shell Scripts (1 concurrent)                     42.4       2798.0    659.9
Shell Scripts (8 concurrent)                      6.0        765.1   1275.1
System Call Overhead                          15000.0     506450.2    337.6
                                                                   ========
System Benchmarks Index Score                                         300.4

------------------------------------------------------------------------
Benchmark Run: 金  8月 19 2022 16:22:42 - 16:51:15
4 CPUs in system; running 4 parallel copies of tests

Dhrystone 2 using register variables       43786854.4 lps   (10.0 s, 7 samples)
Double-Precision Whetstone                    10638.8 MWIPS (11.0 s, 7 samples)
Execl Throughput                               2681.5 lps   (29.9 s, 2 samples)
File Copy 1024 bufsize 2000 maxblocks        261250.8 KBps  (30.0 s, 2 samples)
File Copy 256 bufsize 500 maxblocks           75618.7 KBps  (30.0 s, 2 samples)
File Copy 4096 bufsize 8000 maxblocks        713009.5 KBps  (30.0 s, 2 samples)
Pipe Throughput                              341787.4 lps   (10.0 s, 7 samples)
Pipe-based Context Switching                 105053.3 lps   (10.0 s, 7 samples)
Process Creation                               5319.9 lps   (30.0 s, 2 samples)
Shell Scripts (1 concurrent)                   5372.5 lpm   (60.0 s, 2 samples)
Shell Scripts (8 concurrent)                    680.2 lpm   (60.2 s, 2 samples)
System Call Overhead                        1867592.4 lps   (10.0 s, 7 samples)

System Benchmarks Index Values               BASELINE       RESULT    INDEX
Dhrystone 2 using register variables         116700.0   43786854.4   3752.1
Double-Precision Whetstone                       55.0      10638.8   1934.3
Execl Throughput                                 43.0       2681.5    623.6
File Copy 1024 bufsize 2000 maxblocks          3960.0     261250.8    659.7
File Copy 256 bufsize 500 maxblocks            1655.0      75618.7    456.9
File Copy 4096 bufsize 8000 maxblocks          5800.0     713009.5   1229.3
Pipe Throughput                               12440.0     341787.4    274.7
Pipe-based Context Switching                   4000.0     105053.3    262.6
Process Creation                                126.0       5319.9    422.2
Shell Scripts (1 concurrent)                     42.4       5372.5   1267.1
Shell Scripts (8 concurrent)                      6.0        680.2   1133.6
System Call Overhead                          15000.0    1867592.4   1245.1
                                                                   ========
System Benchmarks Index Score                                         819.2

8GBのスコア

4 CPUs in system; running 1 parallel copy of tests

Dhrystone 2 using register variables       12432249.1 lps   (10.0 s, 7 samples)
Double-Precision Whetstone                     3001.3 MWIPS (9.9 s, 7 samples)
Execl Throughput                                939.3 lps   (30.0 s, 2 samples)
File Copy 1024 bufsize 2000 maxblocks        110570.8 KBps  (30.0 s, 2 samples)
File Copy 256 bufsize 500 maxblocks           31557.0 KBps  (30.0 s, 2 samples)
File Copy 4096 bufsize 8000 maxblocks        301014.5 KBps  (30.0 s, 2 samples)
Pipe Throughput                               97140.9 lps   (10.0 s, 7 samples)
Pipe-based Context Switching                  30796.7 lps   (10.0 s, 7 samples)
Process Creation                               1089.2 lps   (30.0 s, 2 samples)
Shell Scripts (1 concurrent)                   2813.2 lpm   (60.0 s, 2 samples)
Shell Scripts (8 concurrent)                    758.1 lpm   (60.1 s, 2 samples)
System Call Overhead                         508381.0 lps   (10.0 s, 7 samples)

System Benchmarks Index Values               BASELINE       RESULT    INDEX
Dhrystone 2 using register variables         116700.0   12432249.1   1065.3
Double-Precision Whetstone                       55.0       3001.3    545.7
Execl Throughput                                 43.0        939.3    218.4
File Copy 1024 bufsize 2000 maxblocks          3960.0     110570.8    279.2
File Copy 256 bufsize 500 maxblocks            1655.0      31557.0    190.7
File Copy 4096 bufsize 8000 maxblocks          5800.0     301014.5    519.0
Pipe Throughput                               12440.0      97140.9     78.1
Pipe-based Context Switching                   4000.0      30796.7     77.0
Process Creation                                126.0       1089.2     86.4
Shell Scripts (1 concurrent)                     42.4       2813.2    663.5
Shell Scripts (8 concurrent)                      6.0        758.1   1263.6
System Call Overhead                          15000.0     508381.0    338.9
                                                                   ========
System Benchmarks Index Score                                         299.4

------------------------------------------------------------------------
Benchmark Run: 金  8月 19 2022 18:05:29 - 18:33:59
4 CPUs in system; running 4 parallel copies of tests

Dhrystone 2 using register variables       43714107.5 lps   (10.0 s, 7 samples)
Double-Precision Whetstone                    10894.9 MWIPS (10.8 s, 7 samples)
Execl Throughput                               2695.9 lps   (29.9 s, 2 samples)
File Copy 1024 bufsize 2000 maxblocks        261598.5 KBps  (30.0 s, 2 samples)
File Copy 256 bufsize 500 maxblocks           77634.5 KBps  (30.0 s, 2 samples)
File Copy 4096 bufsize 8000 maxblocks        724538.5 KBps  (30.0 s, 2 samples)
Pipe Throughput                              351838.1 lps   (10.0 s, 7 samples)
Pipe-based Context Switching                 109618.0 lps   (10.0 s, 7 samples)
Process Creation                               5461.8 lps   (30.0 s, 2 samples)
Shell Scripts (1 concurrent)                   5592.7 lpm   (60.0 s, 2 samples)
Shell Scripts (8 concurrent)                    721.4 lpm   (60.1 s, 2 samples)
System Call Overhead                        1900892.5 lps   (10.0 s, 7 samples)

System Benchmarks Index Values               BASELINE       RESULT    INDEX
Dhrystone 2 using register variables         116700.0   43714107.5   3745.9
Double-Precision Whetstone                       55.0      10894.9   1980.9
Execl Throughput                                 43.0       2695.9    627.0
File Copy 1024 bufsize 2000 maxblocks          3960.0     261598.5    660.6
File Copy 256 bufsize 500 maxblocks            1655.0      77634.5    469.1
File Copy 4096 bufsize 8000 maxblocks          5800.0     724538.5   1249.2
Pipe Throughput                               12440.0     351838.1    282.8
Pipe-based Context Switching                   4000.0     109618.0    274.0
Process Creation                                126.0       5461.8    433.5
Shell Scripts (1 concurrent)                     42.4       5592.7   1319.0
Shell Scripts (8 concurrent)                      6.0        721.4   1202.3
System Call Overhead                          15000.0    1900892.5   1267.3
                                                                   ========
System Benchmarks Index Score                                         839.0

室温によりスコアが変わる

テストをして気づいたことがあります。それは室温によりスコアが変化することです。室温の高い部屋では、4GBモデルと2GBモデルのスコアが逆転することがありました。

ラズパイはCPU温度が80℃を超えると、処理能力を下げてCPUを保護します。

Raspberry Pi  4のCPU温度とクロックの関係グラフ
出典:www.raspberrypi.com

ラズパイ本来のパフォーマンスを発揮するには以下の対策が有効です。

  • ヒートシンク
  • ヒートシンク型ケース
  • ファン
Raspberry Pi 4の冷却方法

起動時間比較

電源を入れてから、Raspberry Pi OSのデスクトップ画面が立ち上がるまでの時間を比較しました。条件を揃えるために、同じmicroSDカードを使用しています。

結果は以下の通りです。

起動時間
Raspberry Pi 4
2GB
44秒
Raspberry Pi 4
4GB
41秒
Raspberry Pi 4
8GB
41秒

2GBモデルだけ44秒、4GBと8GBはともに41秒でした。

WEBページ読み込み速度比較

一般的にパソコンで重視される要素のひとつに、インターネットが快適に閲覧できることがあります。そこでYouTubeのトップ画面が開くまでの時間を比較しました

結果は以下のとおりです。

YouTubeトップページ
読み込み時間
Raspberry Pi 4
2GB
13秒
Raspberry Pi 4
4GB
10秒
Raspberry Pi 4
8GB
10秒

4GBと8GBモデルが同タイム。2GBモデルが3秒遅れという結果でした。インターネットを快適に使用したいのであれば、コスパ的には4GBモデルに軍配が上がります。

画像認識速度(FPS)比較

続いてはラズパイでよく使われる画像認識でのパフォーマンスを比較します。ラズパイにカメラを接続して、リアルタイムで映像の中から人物の顔を検出するプログラムを作りました。

パフォーマンスの計測にはFPS(フレームレート)という数値を使用します。FPSは「frames per second」の略で、1秒間に表示される画像の枚数を表す数値です。処理能力が高いほどFPSの数値は高くなります

FPSの計測方法は以下の記事を参考にしました。
Raspberry Pi Python版OpenCVによるフレームレート算出方法

使用したプログラムは以下の通りです。

import cv2 as cv
import fps

gFrameRate = fps.FrameRate()         # 初期化
fontcolor = (255,255,255)
fontface  = cv.FONT_HERSHEY_SIMPLEX
fontthick = 2

HAAR_FILE = "/usr/local/lib/python3.9/dist-packages/cv2/data/haarcascade_frontalface_default.xml"
cascade = cv.CascadeClassifier(HAAR_FILE)

cap = cv.VideoCapture(0)

while(True):
    ret, frame = cap.read()
    
    fps = gFrameRate.get()           # フレームレート取得
    fps_str = '%4d' % fps
    cv.putText(frame, fps_str, (10,25), fontface, 1.0, fontcolor, fontthick , cv.LINE_AA)

    face = cascade.detectMultiScale(frame)

    for x, y, w, h in face:
        cv.rectangle(frame,(x,y),(x+w,y+h),(0,0,255),1)

    cv.imshow('Capture',frame)
    if cv.waitKey(1) & 0xFF == ord('q'):
        break

cap.release()
cv.destroyAllWindows()

顔認識プログラムで参考にしたサイト【Python+OpenCV】簡単!たった十数行のプログラムで顔検出

プログラムを実行すると映像の左上に現在のFPSが表示されます。また画面内に人の顔を検出すると顔の部分を四角で囲みます。

各モデルのFPS測定結果は以下の通りです。

FPS
Raspberry Pi 4
2GB
12
Raspberry Pi 4
4GB
13
Raspberry Pi 4
8GB
12

どのモデルも12~13FPS前後で、ほぼ差は見られませんでした。

画像認識速度(FPS)比較(2つのカメラで同時に処理)

メモリの容量が大きいと、同時に複数のソフトを使用したときの処理が高速になります。そこで、先ほどと同じソフトを2同時に実行してFPSを比較してみました。カメラは2台使用しています。

測定結果は以下の通りです。

顔認識でのFPS合計
Raspberry Pi 4
2GB
17
Raspberry Pi 4
4GB
15
Raspberry Pi 4
8GB
20

2GBと4GBは逆転してしまいましたが、8GBモデルは20FPSと良い結果が出ました。同時に複数の処理をする場合は、メモリ8GBの本領が発揮できることがわかります。

2GBモデルの結果

2GBモデルの結果

4GBモデルの結果

8GBモデルの結果

まとめ コスパで選ぶなら4GB

テスト結果をまとめると、ライトユーザーであれば2GBモデルで十分といえます。価格とスペックのバランスを両立させたい方には4GBがおすすめです。予算に余裕があり、複数のソフトを同時に処理させるといった使い方を想定してる方は、8GBモデルを選ぶと高速かつ快適に作業できるでしょう。

コメントを残す

メールアドレスが公開されることはありません。