Re: [chrony-dev] Nanosecond timestamps

[ Thread Index | Date Index | More chrony.tuxfamily.org/chrony-dev Archives ]



On Nov 7, 2016, at 15:04, Denny Page <dennypage@xxxxxx> wrote:

The kernels are Linux 4.4.26, configured for low latency. I’ll follow up with the list of kernel configuration parameters I use. Both the kernels and chrony are built with mtune=native. 


For the kernel configuration, the general guideline I follow is to build a static kernel with no modules and only the drivers/features I need enabled. This can take a bit of effort the first time around for a piece of hardware, but thereafter it’s relatively easy. Regardless of the hardware, I have listed some of the general parameters that I consider important for low latency below. Note that the configuration parameters that are not set are just as important as the ones that are.

CONFIG_NO_HZ_IDLE=y
CONFIG_HIGH_RES_TIMERS=y
# CONFIG_MODULES is not set
CONFIG_DEFAULT_CFQ=y
CONFIG_NR_CPUS=<SET TO ACTUAL NUMBER>
# CONFIG_SCHED_SMT is not set
CONFIG_SCHED_MC=y
CONFIG_PREEMPT=y
CONFIG_HZ_1000=y
# CONFIG_PM is not set
CONFIG_ACPI=y
# CONFIG_CPU_FREQ is not set
# CONFIG_CPU_IDLE is not set
CONFIG_HPET=y

There is always room for improvement, so feedback is welcome.

In addition to the kernel, I disable eee and interrupt coalescing on the network interfaces.

Denny



Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/