Re: Disk I/O slowness

Andy Smith <[email protected]> Wed, 29 Jul 2026 23:28:35 +0000
Newsgroups gmane.linux.debian.user
Message-ID <[email protected]>
Hi,

On Wed, Jul 29, 2026 at 04:38:55PM -0600, Casey Deccio wrote:
> - /home is mounted on /dev/md125, which is a RAID 5 consisting of three disks, formatted with ext4

I did not see anywhere in your email the details of what hardware these
disks are.

> I'm not really sure what else I might try, and I'm reaching out to the community to see if anyone has any suggestions for identifying and fixing the problem.

I would start by a process of simplification. For example, does the sync
still take a long time when /home is not actually mounted? If so then
the issue is with your NVMe.

If it does occur when /home is mounted, then it is the disks in the RAID
setup or the RAID setup itself. Does each individual disk perform
anomalously?

"fio" is a good tool,to carry out performance testing of storage
devices. Have a look what the random 4k read and write I/O is like in
terms of IOPS, and the sequential disk transfer rate in MB/s for reads
or writes. You can try that on the array and then break the array and
try it on each individual disk. Obviously this is destructive to the
data.

If the performance is as expected on a per-disk basis but terrible only
with RAID, it may be time to post to the linux-raid mailing list as this
is unlikely to be a Debian-specific issue. I would then also be checking
if it happens in other RAID configurations like RAID-1.

150 IOPS of random reads (not coming from RAM) is reasonable for a
single 7.2kRPM SATA disk. You could expect 2-3x this from a RAID-5 of
three identical disks.

Write IOPS is a bit more difficult to guess and will depend on whether
you have disabled the write cache in the drives themselves. Due to the
RAID-5 write penalty (read-modify-write) you may expect only 50-70% of a
single disk's IOPS for random writes.

Of course, if your sd[abc] are SSDs then there should be plenty of IOPS
available and those sync times are very weird.

"iostat -x 5" can give some more hints about what is going on.

If there is other I/O happening that you aren't expecting then "iotop"
can help identify it.

Thanks,
Andy