Raspberry Pi 5にM.2 SSDを接続して起動ディスクに設定する方法まとめ、相性の良いSSDやSSDごとの転送速度の違いも検証してみた
Raspberry Pi 5はRaspberry Piシリーズで初めてPCI Express(PCIe)に対応しており、PCIeをM.2に変換するボードを使えばM.2 SSDを認識させたり、M.2 SSDを起動ディスクに設定したりできます。「どのモデルのM.2 SSDなら認識できるのか?」「M.2 SSDを起動ディスクに設定すると、どれだけ高速になるのか?」といった疑問を解消するべく、実際に複数種のM.2 SSDを用意して接続手順や転送速度を確かめてみました。
Raspberry Pi 5 – Raspberry Pi
https://www.raspberrypi.com/products/raspberry-pi-5/
NVMe SSD boot with the Raspberry Pi 5 - Geekworm Wiki
https://wiki.geekworm.com/NVMe_SSD_boot_with_the_Raspberry_Pi_5
・目次
◆1:技適についての前置き
◆2:PCIeをM.2に変換するHAT
◆3:M.2 SSDを起動ディスクに設定する手順
◆4:5種類のSSDで相性をチェック
◆5:転送速度を測定してみた
◆1:技適についての前置き
今回使うRaspberry Pi 5はRaspberry Pi財団からGIGAZINE編集部に直接送られてきたもので、技術基準適合証明を受けていません。そこで、「技適未取得機器を用いた実験等の特例制度」の届出を行っています。なお、日本では代理店による技適申請の後でRaspberry Pi 5が発売される予定です。
◆2:PCIeをM.2に変換するHAT
Raspberry PiにM.2 SSDを認識させるには、PCIeをM.2に変換するボード(HAT)が必要です。今回はGeekwormの「X1000 Pcie M.2 Key-M NVMe SSD PIP PCIe Peripheral Board for Raspberry Pi 5(以下、X1000)」を買ってみました。
Geekworm X1000 Pcie M.2 Key-M NVMe SSD PIP PCIe Peripheral Board for R
https://geekworm.com/products/x1000
X1000のパッケージはこんな感じ。
箱の中にはX1000本体と接続ケーブル、SSDを固定する用のネジなどが入っていました。
Raspberry PiにX1000を取り付けるとこんな感じ。
「Solidigm P41 Plus 512GB」を取り付けてみました。X1000にはSSDを固定するためのネジが付属していますが、Type2230かType2242のSSDしかネジ穴を使えません。そこで、今回は輪ゴムで固定しています。
◆3:M.2 SSDを起動ディスクに設定する手順
SSDを接続したら、「Raspberry PiにSSDを認識させる」「SSDにRaspberry Pi OSをインストールする」「起動ディスクを切り替える」という手順でSSDから起動できるようにします。
・Raspberry PiにSSDを認識させる
まず、SSDと「Raspberry Pi OSをインストール済みのmicroSDカード」をRaspberry Piに装着し、起動します。
システムが起動したら、「/boot/config.txt」に以下の2行を追加します。
dtparam=pciex1
dtparam=nvme
2行追加して保存したら、システムを再起動します。
・SSDにRaspberry Pi OSをインストールする
続いて、SSDにRaspberry Pi OSをインストールします。OSのインストール方法は複数ありますが、今回は「microSDカードの中身を丸ごとSSDにコピーする」という方法でインストールします。
まず、Raspberry Piメニューの「Accessories」の中にある「SD Card Copier」をクリックして起動します。
SD Card Copierが起動したら「Copy From Device」でコピー元のmicroSDカードを指定し、「Copy To Device」でコピー先のSSDを指定。続いて「New Partition UUIDs」にチェックを入れてから「Start」をクリックします。
「SSDの中身がすべて消える」という警告が表示されたら「Yes」をクリック。
コピーが完了するまでしばらく待ちます。
コピーが完了したら「OK」をクリックしてSD Card Copierを終了します。
・起動ディスクを切り替える
SSDの準備が完了したら、EEPROMを書き換えてSSDからシステムを起動できるようにします。EEPROMを書き換えるには以下のコマンドを実行します。
sudo rpi-eeprom-config --edit
エディタで設定ファイルが開いたら、「BOOT_ORDER=0xf41」と記されている部分を「BOOT_ORDER=0xf416」に書き換えて保存します。
EEPROMを書き換えたら、システムをシャットダウンしてmicroSDカードを抜き、もう一度起動します。
これでSSDからシステムを起動できるはずでしたが、今回はエラーが出て起動できませんでした。
Geekwormのフォーラムを調べてみると、EEPROMに「PCIE_PROBE=1」という行を追加するとうまくいくという情報を発見。以下のコマンドを再度実行して、末尾に「PCIE_PROBE=1」という行を追加し、保存しました。
sudo rpi-eeprom-config --edit
再起動してみると、無事にOSが起動しました。
◆4:5種類のSSDで相性をチェック
Raspberry PiとX1000を組み合わせた場合、SSDの種類によっては認識できないことがあるとのこと。そこで、「Solidigm P41 Plus 512GB」「Samsung 950 PRO 256GB」「WD Black SN750」「Monster Storage MS950 2TB」「Intel Optane 16GB」という5種類のSSDを用意して、どのSSDなら問題なく起動できるのか確かめてみました。
検証の結果、「Solidigm P41 Plus 512GB」「Samsung 950 PRO 256GB」「WD Black SN750」の3種は問題なくシステムを起動可能でした。
一方で、「Monster Storage MS950 2TB」と「Intel Optane 16GB」は認識されませんでした。なお、記事作成時点で出荷されているX1000は今回使った個体と設計が異なるため、認識できるSSDに違いがある可能性もあります。
◆5:転送速度を測定してみた
SSDからシステムを起動することでどれだけの高速化が可能なのか検証するべく、microSDカード「SUNEAST ULTIMATE PRO 64GB」と3種のSSDの転送速度を比較してみます。
転送速度はJames A. Chambers氏が公開しているベンチマークツールを用いて測定します。ベンチマークテストを実行するには、以下のコマンドを実行するだけでOK。
sudo curl https://raw.githubusercontent.com/TheRemote/PiBenchmarks/master/Storage.sh | sudo bash
まず、microSDカード「SUNEAST ULTIMATE PRO 64GB」の測定結果は以下の通り。
テスト | SUNEAST ULTIMATE PRO 64GB |
---|---|
HDParm Disk Read | 90.06 MB/s |
HDParm Cached Disk Read | 84.92 MB/s |
DD Disk Write | 73.9 MB/s |
FIO 4k random read | 6301 IOPS (25206 KB/s) |
FIO 4k random write | 2760 IOPS (11040 KB/s) |
IOZone 4k read | 28098 KB/s |
IOZone 4k write | 14015 KB/s |
IOZone 4k random read | 20072 KB/s |
IOZone 4k random write | 13969 KB/s |
スコア | 3905 |
続いて、「Solidigm P41 Plus 512GB」での測定結果が以下。すべての項目でmicroSDカードよりも圧倒的に高速な値を記録しています。
テスト | Solidigm P41 Plus 512GB |
---|---|
HDParm Disk Read | 436.50 MB/s |
HDParm Cached Disk Read | 433.61 MB/s |
DD Disk Write | 254 MB/s |
FIO 4k random read | 105567 IOPS (422268 KB/s) |
FIO 4k random write | 55501 IOPS (222005 KB/s) |
IOZone 4k read | 124515 KB/s |
IOZone 4k write | 145062 KB/s |
IOZone 4k random read | 68056 KB/s |
IOZone 4k random write | 153531 KB/s |
スコア | 33144 |
Raspberry Pi 5では正式にはPCIe 2.0に対応しているのですが、「/boot/config.txt」に「dtparam=pciex1_gen=3」という行を追加することで強制的にPCIe 3.0で接続させることができます。PCIe 3.0接続の状態で「Solidigm P41 Plus 512GB」の転送速度を測定した結果が以下。すべての項目でPCIe 2.0よりも高速化しました。
テスト | Solidigm P41 Plus 512GB |
---|---|
HDParm Disk Read | 750.34 MB/s |
HDParm Cached Disk Read | 737.25 MB/s |
DD Disk Write | 355 MB/s |
FIO 4k random read | 113149 IOPS (452596 KB/s) |
FIO 4k random write | 59708 IOPS (238833 KB/s) |
IOZone 4k read | 153439 KB/s |
IOZone 4k write | 184383 KB/s |
IOZone 4k random read | 74630 KB/s |
IOZone 4k random write | 232813 KB/s |
スコア | 43776 |
PCIe 3.0接続の方が高速な転送が可能なことが分かったので、「Samsung 950 PRO 256GB」と「WD Black SN750」もPCIe 3.0接続で転送速度を測定し、4種のストレージの転送速度を表にまとめてみました。
テスト | SUNEAST ULTIMATE PRO 64GB | Solidigm P41 Plus 512GB | Samsung 950 PRO 256GB | WD Black SN750 |
---|---|---|---|---|
HDParm Disk Read | 90.06 MB/s | 750.34 MB/s | 681.17 MB/s | 847.31 MB/s |
HDParm Cached Disk Read | 84.92 MB/s | 737.25 MB/s | 629.75 MB/s | 827.47 MB/s |
DD Disk Write | 73.9 MB/s | 355 MB/s | 371 MB/s | 371 MB/s |
FIO 4k random read | 6301 IOPS (25206 KB/s) | 113149 IOPS (452596 KB/s) | 172100 IOPS (688403 KB/s) | 96603 IOPS (386415 KB/s) |
FIO 4k random write | 2760 IOPS (11040 KB/s) | 59708 IOPS (238833 KB/s) | 59362 IOPS (237449 KB/s) | 59708 IOPS (238833 KB/s) |
IOZone 4k read | 28098 KB/s | 153439 KB/s | 185135 KB/s | 177499 KB/s |
IOZone 4k write | 14015 KB/s | 184383 KB/s | 134749 KB/s | 169424 KB/s |
IOZone 4k random read | 20072 KB/s | 74630 KB/s | 50434 KB/s | 53822 KB/s |
IOZone 4k random write | 13969 KB/s | 232813 KB/s | 149835 KB/s | 219808 KB/s |
スコア | 3905 | 43776 | 36818 | 41236 |
単位を「MB/s」にそろえてグラフ化したものが以下。グラフをクリックすると大きい画像で確認できます。SSDの種類によって速度にバラつきがありますが、どのSSDもmicroSDカードと比べて圧倒的に高速なデータ転送が可能でした。
・つづき
2024年10月23日にRaspberry Pi公式SSDが登場しました。公式SSDと公式HATを組み合わせてRaspberry Pi 5に接続するレビュー記事は、以下のリンク先で確認できます。
Raspberry Pi 5に公式SSDを接続して起動ディスクに設定する手順まとめ&SSDとmicroSDカードの速度比較もあり - GIGAZINE
◆「Raspberry Pi 5」でレビューして欲しい点を教えて!
「こうするとどうなるかやってみて!」「こういうことできる?」「こんな時どうなる?」など実際に使うからこそ試して欲しいポイントを以下のリンク先から教えてください~。他の誰かと内容が重なってもOK、むしろ多ければ多いほど「やはりこういう点が気になるのだな~」というのがわかるので助かるのです。そして次のレビュー記事作成に反映されてお役立ち!
• Discord | "「Raspberry Pi 5」がGIGAZINE編集部に届いたのでレビューするけど何が知りたい?" | GIGAZINE(ギガジン)
・関連記事
「Raspberry Pi 5」にOSをインストールして超小型デスクトップPCとして使えるようにする手順を初心者にも分かりやすくまとめてみた - GIGAZINE
Raspberry Pi 5をUSBメモリや外付けSSDからブートする手順&低電力時の警告画面をスキップする方法まとめ - GIGAZINE
「Raspberry Pi 5」の外観やポートの数を徹底チェック&どんなチップが搭載されているのか接写画像を撮影しまくってみた - GIGAZINE
「Raspberry Pi 5」に純正アクティブクーラーを装着して冷却部位やHATとの干渉具合をチェックしてみた - GIGAZINE
Raspberry Pi 5に純正アクティブクーラーは必須なのか?クーラーの有無で温度がどう変化するのか検証してみた - GIGAZINE
Raspberry Pi 5は5V/5A対応電源アダプター以外でも使用可能なのか?純正電源と非純正電源で高負荷時の安定性を比較してみた - GIGAZINE
Raspberry Pi 5のRTC機能を使って電源オフでも時刻を維持する方法、オフラインでも時刻を維持できるので遠隔監視などに便利 - GIGAZINE
「Raspberry Pi 5」に強い光を照射すると強制終了するデスフラッシュ現象を確認したので詳細を共有します - GIGAZINE
「Raspberry Pi 5」登場、CPUとGPUがRaspberry Pi 4の2~3倍の性能で独自開発I/Oコントローラー「RP1」も搭載 - GIGAZINE
Raspberry Pi 5のベンチマーク結果をRaspberry Pi財団が公表、前世代の2倍以上のスコアをたたき出す - GIGAZINE
Raspberry Pi公式キーボードとマウスが届いたので外観を詳しくチェックしてみたよレビュー - GIGAZINE
・関連コンテンツ
in レビュー, ハードウェア, Posted by log1o_hf
You can read the machine translated English article Summary of how to connect an M.2 SSD to ….