after several days of running (way too) many tests, I've got some data
to show that it may be a good idea to drop the DEADLINE I/O scheduler
for Zesty and move to CFQ with buffered writeback throttling (WBT) +
WBT_MQ (WBT multi-queu) enabled.
We originally moved to DEADLINE because of the issues with slow I/O (say
to flash drives) causing applications to hang while blocked on the slow
I/O being flushed out. It seems that with the recent 4.10 WBT driver
and (possibly other block driver changes) we see some performance
benefits also with CFQ, namely:
1. Faster boots. On a 8 thread Xeon CPU E3-1275 I'm seeing a reduction
in usertime boots from 33.92s (Deadline) to ~24.5s (CFQ)
There are some places where CFQ + MQ is less performant than CFQ + MQ +
SQ, and vice-versa. However, my general feeling for Zesty is that we
should give this a try as it seems to work well. The config changes are:
This will give us plenty of time to give this a good test in the next
few months and revert them if we find any problematic corner cases.
(The win on boot time, build times and writes to slow devices) is
probably the most compelling choice for these changes IMHO.
Colin King
Signed-off-by: Tim Gardner <tim.gardner@canonical.com>