Amazonのアソシエイトとして、ラズパイダ(raspida.com)は適格販売により収入を得ています。詳しくは当サイトの プライバシーポリシーをご覧ください。

遅まきならが、Pi5にNVMe接続のSSDを繋いで試しました。速度に関してはNVMeのGen3に設定できるため、一般的なPCと同じように感じることができました。

SSDドライブを接続するためのHATもいくつも種類があります。今回は、収納するケースに対応している製品で選びました。ついでに5V5Aの電源アダプターも購入したので万全です。

既に同じ構成の人が多く見受けられます。HATは各メーカーで主に対応しているSSDドライブが記載されていることもあります。先に公式ページを確認した方が良いでしょう。

LinuxデスクトップPCになるかならないか?

結論は、なりますね!

5年落ちのPCと同等で、Linuxということもあり速度は実用的でした。

2024/04/14追記:BOOT_ORDER=の値を取り間違えていたので説明を修正

Pi 5 + NVMe SSDドライブの構成

海外でも売り切れになっているArgon製のケースはもう少し時間がかかりそうなので、Amazonで購入できる製品で選びました。

選定した前提条件

  • ケースに入れられる
  • 純正のファンを使いたい

あまり期待はしていませんでしたが、意外と良かったですよ。

Raspberry Pi 5の本体以外で揃えたのは次の通りです。

同メーカーのPi 5 ケースなら収められます。

全部でおよそ13,000円くらい。Pi5と合わせると24,000円強になっちゃいます。ちょっと高いなー。

NVMe接続SSDドライブは、HATによって相性もあるみたいです。今回は割引価格だったのでSP製にしました。事前に調べませんでしたが問題ありません。

SSDドライブは規格が分かりにくいため間違えないように注意しましょう。

ケースに収納した様子

組み上げてみると意外と良かったですよ。

電源とmicroSDカードへもアクセスは容易

収まりも良い感じ

導入手順

順番としては次の通りで、OSにあるツール「SDカードコピアー」を使うと簡単です。

STEP

Imagerで書き込み

microSDカードにRaspberry Pi OSを書き込む(今回はノーマル64bit)

HATやSSDドライブも取り付けたまま起動してもOK。

STEP

「SDカードコピアー」でコピー

起動後にRaspberry Pi -> アクセサリにある「SDカードコピアー」を使ってSSDドライブへコピーする。

New Partition UUIDsにチェックを付ける。

チェックを付けないと、全く同じUUIDが出来上がってしまいユニークにはならない。もし、このmicroSDカードをSSDドライブで使う場合にややこしいことになってしまいます。チェックを忘れずに。

STEP

電源をOFF

一旦、電源をOFFにしてmicroSDカードを抜いてから再度、(Pi 5だから電源ボタンで)電源を入れる。

コピアーを使った場合、設定せずともPCIeは認識されNVMe接続のSSDドライブから起動します。

他にNVMe接続のSSDドライブを直接PCに繋げることができれば、Pi OSを直接書き込むこともできます。ただ、その場合は設定箇所が増えるので注意してください。

ブート順序の設定

NVMe SSDドライブ起動自体はこれでOKなんですけど、最低限設定しておいた方が良いのがブート順序です。

NVMeで起動後、設定を直接編集か、GUIのraspi-configコマンドから設定できます。

直接編集する場合

sudo rpi-eeprom-config --edit

記載されているBOOT_ORFERの値を変更します。

[all]
BOOT_UART=1
POWER_OFF_ON_HALT=0
BOOT_ORDER=0xf461

BOOT_ORDERの値が4がUSB、6がNVMe、1がmicroSDカードを表しています。

ここでブート順序を指定しています。ドキュメントによると、右側から順番に起動の試行が始まります。

0xf41
#この場合、最初に SD(1) を試し、次に USB-MSD(4) を試してから繰り返します (BOOT_ORDER が空の場合のデフォルト)

ここは公式ドキュメント#bootloaderから、NVMeを先頭にするBOOT_ORDER=0xf416に変更しました。

BOOT_ORDER=0xf416

ただ、このままだとmicroSDカードの方が後になります。microSDカードを挿入した時はNVMeより先に起動させたいならBOOT_ORDER=0xf461のままにしておきましょう。起動の試行待ちが少し発生しますけど、microSDカードが挿入されていなければNVMe接続のSSDドライブからの起動は変わりません。

ターミナルに表示されたログ(参考)

sudo rpi-eeprom-config --edit
Updating bootloader EEPROM
 image: /lib/firmware/raspberrypi/bootloader-2712/default/pieeprom-2024-02-16.bin
config_src: blconfig device
config: /tmp/tmp4atjncvu/boot.conf
################################################################################
[all]
BOOT_UART=1
POWER_OFF_ON_HALT=0
BOOT_ORDER=0xf461 #0xf416に変更
PCIE_PROBE=1 #追記

################################################################################

*** To cancel this update run 'sudo rpi-eeprom-update -r' ***

*** CREATED UPDATE /tmp/tmp4atjncvu/pieeprom.upd  ***

   CURRENT: 2024年  2月 16日 金曜日 15:28:41 UTC (1708097321)
    UPDATE: 2024年  2月 16日 金曜日 15:28:41 UTC (1708097321)
    BOOTFS: /boot/firmware
'/tmp/tmp.RJjHzZtFxH' -> '/boot/firmware/pieeprom.upd'

UPDATING bootloader.

*** WARNING: Do not disconnect the power until the update is complete ***
If a problem occurs then the Raspberry Pi Imager may be used to create
a bootloader rescue SD card image which restores the default bootloader image.

flashrom -p linux_spi:dev=/dev/spidev10.0,spispeed=16000 -w /boot/firmware/pieeprom.upd
UPDATE SUCCESSFUL

raspi-config

これはraspi-configでも設定できるので、編集するのが怖い方は、少し分かりやすいraspi-configから変更してください。

sudo raspi-config

どちらも再起動しないと有効になりません。

■Pi 5は8GBモデルがオススメ

Gen3で動作させる

Pi5のデフォルトでは、NVMeはGen2で動作します。これをGem3に設定してあげることで、速度上限をアップできます。自己責任でどうぞ。

Raspberry Pi 5 は、Gen 3.0 の速度については認定されていません。 PCIe Gen 3.0 接続は不安定になる可能性があります。

sudo nano /boot/firmware/config.txt

「SDカードコピア」で設定した場合は、次のように記載します。

dtparam=pciex1

# Enable PCIe and NVMe Gen3
dtparam=pciex1_gen=3

これで上限が上がり、PCIe×1の理論値で、Gen2の5.0GbpsからGen3の8.0Gbpsになります。

dtparam=pciex1とは別に追加しておくと良いでしょう。

Gen2のままなら

Gen3を使わない場合は、先程のconfig.txtではpciex1とだけあればOKです。

dtparam=pciex1

https://www.raspberrypi.com/documentation/computers/raspberry-pi.html#enable-pcie

別に必要になる設定

「SDカードコピア」で用意したSSDドライブではなく、直接Raspberry Pi OSを書き込んだSSDドライブの場合は、別に設定が必要になります。

先程のブートオーダーで編集したrpi-eeprom-configでPCIe HATを認識させるために次の行が必要です。

PCIE_PROBE=1

同様に、config.txtにもPCIeを有効にする記述をしておくべきでしょう。

dtparam=pciex1

この2つは、使用したNVMe接続HATでは必要ありませんでした。記載されていても問題は無いため記述しておきましょう。

速度を測定

Pi 5に接続したNVMe SSDドライブの速度を測定してみました。皆さんもやってみてください。

速度測定は以前にも使ったWebサービスを使いました。

ベンチマークの使い方

コマンドを実行するだけです。

sudo curl https://raw.githubusercontent.com/TheRemote/PiBenchmarks/master/Storage.sh | sudo bash

結果

Gen3に設定した結果は満足いくスコアです。

Category                  Test                      Result
HDParm                    Disk Read                 797.44 MB/sec
HDParm                    Cached Disk Read          750.33 MB/sec
DD                        Disk Write                437 MB/s
FIO                       4k random read            211134 IOPS (844536 KB/s)
FIO                       4k random write           92252 IOPS (369009 KB/s)
IOZone                    4k read                   218480 KB/s
IOZone                    4k write                  191115 KB/s
IOZone                    4k random read            66260 KB/s
IOZone                    4k random write           214275 KB/s

                          Score: 50319

Gen2のままだとスコアは39305で、読み込み412.84 MB/secだったので、ほぼ倍の数値です。

Pi5最速は読み込み843.2 MB/s

当該サイトでは結果がたくさんアップされています。見比べてください。

System Board: Raspberry Pi 5 Model B Rev 1.0 - pibenchmarks.com

Raspberry Pi 5で最速だったSSDドライブはスコア67,000超え!2位以下は今回と同じHATを使っていますね。

あくまでもpibenchmark限定のランキングですが参考になります。

他と比べてみた

Raspberry Pi 5以前のスコアを比べてみると、microSDカード、USB接続SSDとも明らかに違うスコアになっていました。

microsd usbブートしたssd240GBで計測

同じ環境ではありませんから参考値になります。

デバイススコアDisk Read
ノーブランド32GB(Pi4)64540.03/MB/s
USB接続SATA SSD 240GB(Pi4)8011311.60MB/s
NVMe接続 M2.SSD 256GB Gen2(Pi5)39305412.84 MB/s
NVMe接続 M2.SSD 256GB Gen3(Pi5)50319797.44 MB/s

速度比較

USB接続のSSDの倍以上で驚きます。

以前にアップしたのが登録されていました。

User Submissions - raspida - pibenchmarks.com

他の構成との比較

今のMacだとlsblkが使えないから計測できないから過去モデルしかありません。所持しているMacbookPro(2015)で検索するとありました。

System Board: MacBookPro12,1 - pibenchmarks.com

Rレッド Rレッド
スコア31,000?! Pi 5の方が圧倒的に速いじゃん。

PCで似たようなスコアを探すと、HP EliteDesk 705 G4 Desktop MiniやDell Latitude のスコア7490が近いみたい。

System Board: EliteDesk 705 G4 DM 65W (TAA) - pibenchmarks.com

System Board: Latitude 7490 - pibenchmarks.com

どちらも2018年頃にリリースされているモデルです。Pi 5は性能的にPCの5年落ちというのをどこかで読んだけど合っていますね。

中古でも2万円前後らしいから、価格も新品のPi 5+NVMe構成と変わりません。

ラズパイダForum

ラズパイダForumでは、トピックが上がっています。

ラズパイダForum

(フォーラム画像削除)

海外では徐々にPi5用HATが登場している

もしよければ、別トピックでも構いませんので使用したSSDやHATなど教えてください。

イイね イイね
PI5+NVMeならデスクトップPCみたい

備忘録

今回、他に使ったコマンドを備忘録として書いておきます。

lspci
lsblk
blkid

Pi 5向けNVMe SSD 価格比較

Pi 5だとPCIe Genは設定しても3.0までしか対応していないため、PCIe Gen 3.0×4で選びました。

口コミを見る

SSDは特性上、容量が多い方が速度も速くなりますが、256GBや128GBでもラズパイなら充分かもしれません。