Lucid server flavour RFC
Tim Gardner
tim.gardner at canonical.com
Wed Jan 20 16:06:36 GMT 2010
I'm considering an additional Lucid x86_64 flavour, one tuned for low
latency, power consumptive platforms. I've received a fair bit of
anecdotal evidence that the current Lucid server flavour is not well
tuned for some workloads. Examples include audio processing platforms
such as asterisk and mythbuntu. There are a number of folks that have
requested a higher HZ setting for the desktop as well.
I expect this kernel flavour will be an elective install, i.e., you'll
have to install it manually at least once.
There are 3 knobs that that I know of that can be used to change
behavior with respect to latency. Unfortunately, one of them requires a
kernel recompile (hence the new flavour).
1) Set CONFIG_HZ=1000. This reduces the user task timeslice to 1 msec. I
believe this also improves the responsiveness of select() and poll().
2) Disable CPU frequency scaling by setting the default governor to
PERFORMANCE. An alternative is CONFIG_CPU_FREQ=N which leaves the CPU
frequency setting at whatever the BIOS has set. Note that CPU frequency
governor settings can be changed at run time (if CONFIG_CPU_FREQ=y).
3) Disable the CPU idle governor, or alternatively set 'idle=halt' on
the kernel boot command line. If the governor is active ACPI can reduce
the power consumption of a CPU while its in an idle state. However, it
takes a finite amount of time to fully restore a CPU which therefore has
an impact on latency.
Its possible that the CPU and I/O schedulers could also have an impact
on latency, but both are also run time settable.
I'm quite interested in your suggestions for improving latency sensitive
workloads.
rtg
--
Tim Gardner tim.gardner at canonical.com
More information about the ubuntu-devel
mailing list