🛠 Mesurer le stockage du BPI-CM4 : eMMC, microSD et le palier NVMe

Banana Pi BPI-CM4 (Amlogic A311D, Raspberry Pi CM4 form factor) · debutant · Schéma : IMG-bananapi-cm4-debutant-3-benchmark-stockage-cm4.svg — BPI-CM4IO avec une microSD insérée dans son slot et un SSD NVMe monté sur adaptateur mini-PCIe ; en médaillon, histogramme des débits séquentiels eMMC / microSD / NVMe.

Objectives

The BPI-CM4 offers three very different storage paths: the module's 16 GB eMMC (8-bit bus, mmc-hs200, 200 MHz), the carrier's microSD (4 bits, 50 MHz), and PCIe Gen2 x1 routed to the carrier's mini-PCIe port. You will measure each path using fio and hdparm and compare the results to published references: eMMC ≈ 233 MB/s in 1 M sequential read (fio) or 148.8 MB/s (hdparm), NVMe SSD (Samsung 970 EVO Plus via mini-PCIe adapter) ≈ 351 MB/s and 101 k IOPS in 4 k random — approximately 100× the microSD in 4 k access.

Hardware

Complete code

sudo apt update && sudo apt install -y fio hdparm

# Lecture séquentielle 1 M sur le rootfs (adapter le périphérique)
sudo fio --name=seqread --rw=read --bs=1M --size=256M --runtime=30 \
  --iodepth=32 --ioengine=libaio --direct=1 --filename=/root/testfile
sudo rm -f /root/testfile

# Repère hdparm (comparable aux chiffres du wiki vendor)
sudo hdparm -Tt /dev/mmcblk0        # eMMC du module
sudo hdparm -Tt /dev/mmcblk1        # microSD du carrier

# Score de stockage standardisé (procédure du wiki Banana Pi)
curl -fsSL https://raw.githubusercontent.com/TheRemote/PiBenchmarks/master/Storage.sh | sudo bash

Expected verification

eMMC sequential read in the range of 150 to 230 MB/s depending on the batch (eMMC chips are second-sourced: Samsung HS200 or Rayson, figures vary from one card to another); microSD significantly behind, especially in 4 k random; if an NVMe SSD is mounted, the PiBenchmarks score jumps (the wiki cites 24550 versus 5446 for eMMC).

Common errors

Other tutorials for this board

Code examples for this board

← Back to the board 🛠 All tutorials