This Lets You Boot Compute Module 4 with NVMe SDDs
Get extra storage as well as NVMe SSD boot for your Raspberry Pi CM4.
When it comes to booting any Raspberry Pi model, one of the most used methods is the SD card boot. However, when it comes to the CM4 IO board due to the onboard PCI express bus, you can easily connect NVMe storage.
With the thought of booting your Compute Module 4 using NVMe SDDs, the Raspberry Pi Foundation has released the beta version. To try this out, Jeff Geerling has used a MirkoPC that allows the CM4 to sit on top of it with an SSD connection through the M.2 M-key slot.
"The setup process is a little involved right now, since you have to set the correct boot order, update the Pi's bootloader, update the Pi's firmware, but it's not too crazy," Geerling adds. "The two main things I wanted to test were boot times and app launch/use times, to see what kind of impact the NVMe storage would have."
On the software side of the booting process, you need to update the CM4 bootloader using the usbboot. The Raspberry Pi Foundation provides more details on other requirements for hardware and software in the documentation.
One of the interesting things noticed in the benchmarks shown by Geerling was that the boot time across NVMe, eMMC, and microSD did not affect much. If you look at the figure above, the boot time for NVMe was more compared to other methods used.
Geerling then looked at the launch time for "Chromium, load a webpage, and quit last year for some other testing." When we look at the benchmark, the NVMe storage is 44% faster than microSD, and around 20% faster than eMMC. Now you only don't get more storage with NVMe SSDs but the day-to-day performance is also enhanced by a significant level.
Continuing with the benchmarks, Geerling tried using NVMe storage in a USB 3.0 to NVMe adapter as well. So, in such a case, the benchmark showed native NVMe to be about 10% faster than NVMe through USB adapters. Looking at these benchmarks, this makes it a boot method worth considering for your CM4.
More details about Geerling's work are available on his blog.
Abhishek Jadhav is an engineering student, freelance tech writer, RISC-V Ambassador, and leader of the Open Hardware Developer Community.