Performance/speed of Rock Pi 4 NVMe 256GB Lenovo M.2 SSD

Hi All

sudo hdparm -t /dev/nvme0n1p1
[sudo] password for rock:

/dev/nvme0n1p1:
 Timing buffered disk reads: 964 MB in  3.00 seconds = 321.08 MB/sec

How can I increase the performance of the NVMe 256GB Lenovo M.2 SSD? 320MB/s is pathetic…
Key information about my system:

Rock Pi 4 Model B 4GB
Ubuntu Server 18.04 aarch64 GNU/Linux

uname -r
4.4.154-104-rockchip-g3037f71a0de7

cat /etc/os-release
NAME="Ubuntu"
VERSION="18.04.4 LTS (Bionic Beaver)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 18.04.4 LTS"
VERSION_ID="18.04"
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
VERSION_CODENAME=bionic
UBUNTU_CODENAME=bionic

Any pointers are much appreciated! Thank you all.

Do a more serious test benchmark.
What is specification of drive and real world test also post those.

This is two low even in pcie gen1 mode. You can try to enable the pcie gen2 mode.

Check:

1 Like

I will look at Jack’s post next, but first I agree i should add some more numbers:

hdparm -Tt /dev/nvme0n1

/dev/nvme0n1:
 Timing cached reads:   2130 MB in  2.00 seconds = 1064.81 MB/sec
 Timing buffered disk reads: 1364 MB in  3.00 seconds = 454.19 MB/sec

dd performance:

  • write zeroes:

    sync; dd if=/dev/zero of=/perf/tempfile.zero bs=1M count=1024; sync
    1024+0 records in
    1024+0 records out
    1073741824 bytes (1.1 GB, 1.0 GiB) copied, 2.7368 s, 392 MB/s

  • read back:

    sudo /sbin/sysctl vm.drop_caches
    vm.drop_caches = 0
    sudo /sbin/sysctl -w vm.drop_caches=3
    vm.drop_caches = 3
    dd if=/mnt/cardano/test/perf/tempfile.zero of=/dev/null bs=1M count=1024
    1024+0 records in
    1024+0 records out
    1073741824 bytes (1.1 GB, 1.0 GiB) copied, 2.05381 s, 523 MB/s

The NVMe flash in question is a Lenovo 256GB PCI3.0x4 Modelnr 4XB0P01014.

Hi @jack, thanks for that link!
I have updated the configuration following the instructions on the page. After a -planned- next reboot I will revisit this page to update with results. Have a great weekend.

I wonder …
I have the same dismal performance
BTW the comment about ‘real benchmarks’ is only valid id you are looking at ‘real performance’
The dd or hdparm method gives a good feel of what you are measuring.
I have done all the overlay stuff to enable gen-2 mode
I followed the wiki to flash SPI-flash. All went well inckuding a string of ‘wrote block NN’
It does not boot from SPI
There is no /dev/mtd…
Could the ‘no gen-2’ and ‘no SPI flash’ be related and be overlay is not working?
James

I’m glad I’m not the only one then. I’m on the latest kernel from test repo and gen-2 pcie overlay had a near zero impact… So I would speculate it’s to actually working as intended… But I don’t know how to fix it unfortunately.