The iozone program is a disk benchmarking tool (iozone3).
Odd. I just tried to install iozone
from the AUR and got an error about it not being available for the aarch64
architecture.
Do I have to modify the build files to install this on an RPi4?
Chromium should not be that slow. I’m literally building software in the background right now on an SD card while typing this to you on my pi4 and I can click on a menu item or make a new tab in chromium -instantly-. I mean… maybe you have a bad sd card or controller? that’s insane. It’s not a fast experience, but I’ve literally got 7 tabs open right now while building in the background and it is faster than you’re describing by a lot. I’d be interested to see what iotop says and what else is going on on your system. I’m also running under plasma (with composition turned off so 60fps 1080 video runs.)
What’s the best way to capture iotop output for the forum?
Using XFCE, the whole system is sluggish, even when Firefox/Chrome is closed. I’ve gotten used to clicking and waiting 1-3 seconds for something to happen, even when top
isn’t showing any sort of CPU constraint. It’s when I’m hitting something like speediest.net or fast.com in either browser in XFCE that all 4 cores completely peg. From the command line, the speedtest-cli
tool takes about ~25 percent of the CPU and still underreports my speed.
I’m starting to wonder, as you said, if there’s something wrong with the SD Card. It’s rated for 100MB/s, and even with the improved disk IO in the 5.10 kernel, I still can’t break ~80 MB/s, and usually hit somewhere between 75-80.
I had assumed that was just from the cheap USB SD Card reader I’m using, but now I’m wondering about the card itself. (Still, the reader is much faster than the built-in microSD slot, which never broke 40 MB/s. I actually switched to booting and running off a USB 3 card reader to try to address the CPU throttling issue, because I thought it was disk I/O.)
Drive info:
~]$ sudo hdparm -I /dev/sdd
/dev/sdd:
SG_IO: bad/missing sense data, sb: 70 00 05 00 00 00 00 0a 00 00 00 00 24 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
ATA device, with non-removable media
Standards:
Likely used: 1
Configuration:
Logical max current
cylinders 0 0
heads 0 0
sectors/track 0 0
–
Logical/Physical Sector size: 512 bytes
device size with M = 10241024: 0 MBytes
device size with M = 10001000: 0 MBytes
cache/buffer size = unknown
Capabilities:
IORDY not likely
Cannot perform double-word IO
R/W multiple sector transfer: not supported
DMA: not supported
PIO: pio0
Here’s a benchmark using hdparm: ~]$ clear && lsblk && sudo hdparm -t --direct /dev/sdd
I’m not yet sure how reliable the various benchmarking tools are, so here’s a test using dd
.
Two things I immediately notice:
- The first test is the slowest reported number I’ve ever seen off this card.
- The microSD card seems very inconsistent from run to run. I’d expect minor variances, but I did these one after the other with maybe 1-2 seconds in between.
[~]$ dd if=/dev/zero of=~/2G-test-file.txt oflag=direct bs=128k count=16k
16384+0 records in
16384+0 records out
2147483648 bytes (2.1 GB, 2.0 GiB) copied, 68.2323 s, 31.5 MB/s
[~]$ dd if=/dev/zero of=~/2G-test-file2.txt oflag=direct bs=128k count=16k
16384+0 records in
16384+0 records out
2147483648 bytes (2.1 GB, 2.0 GiB) copied, 42.5517 s, 50.5 MB/s
[~]$ dd if=/dev/zero of=~/2G-test-file2.txt oflag=direct bs=128k count=16k
16384+0 records in
16384+0 records out
2147483648 bytes (2.1 GB, 2.0 GiB) copied, 44.0087 s, 48.8 MB/s
[~]$ dd if=/dev/zero of=~/2G-test-file2.txt oflag=direct bs=128k count=16k
16384+0 records in
16384+0 records out
2147483648 bytes (2.1 GB, 2.0 GiB) copied, 36.1134 s, 59.5 MB/s
[~]$ dd if=/dev/zero of=~/2G-test-file2.txt oflag=direct bs=128k count=16k
16384+0 records in
16384+0 records out
2147483648 bytes (2.1 GB, 2.0 GiB) copied, 40.2269 s, 53.4 MB/s