btrfs scrub ioprio

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



TL;DR scrub's ioprio argument isn't really helpful - a scrub murders system performance til it's done.

My system:

3.11 kernel (from Ubuntu Saucy)
btrfs-tools from 2013-07 (from Debian Sid)
Opteron 8-core CPU
32GB RAM
4 WD 1TB Black drives in a btrfs RAID10 (data and metadata).

iotop shows that the idle priority really is set on the processes:

>> me@box:~$ sudo iotop -bn 1 | grep idle
>> 28326 idle root 82.06 M/s 0.00 B/s 0.00 % 0.00 % btrfs scrub start -c3 /data >> 28327 idle root 89.30 M/s 0.00 B/s 0.00 % 0.00 % btrfs scrub start -c3 /data >> 28329 idle root 84.47 M/s 0.00 B/s 0.00 % 0.00 % btrfs scrub start -c3 /data >> 28331 idle root 79.64 M/s 0.00 B/s 0.00 % 0.00 % btrfs scrub start -c3 /data

But unfortunately, despite being on "idle" priority, the scrub is KILLING system performance. This is one of my eight CPU cores. Any core with a significant amount of non-idle time has three to four times as much wait time as it does user/system time. Brutal:

>> Cpu4 : 4.4%us, 16.1%sy, 0.0%ni, 12.4%id, 67.2%wa, 0.0%hi, 0.0%si, 0.0%st

Anybody got any ideas that might make the scrub go a little less... enthusiastically... and leave the system more usable? Right now, with a scrub running, the system is so burdened that it may take as much as two to three seconds to so much as display a manpage. God help you if you want to, say, log into a VM running on the system. It'll GET there, but it'll look like it's iSCSI on TCP over carrier pigeon.
--
To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux Filesystem Development]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux