dd copy, context switch overhead

Julian Wiedmann jwiedmann86 at gmail.com
Fri Sep 27 20:43:07 UTC 2013


On 27.09.2013 18:02, Colin Ian King wrote:
> On 27/09/13 16:58, Tim Gardner wrote:
>> On 09/27/2013 08:04 AM, Colin Ian King wrote:
>>> Hi,
>>>
>>> I've observed that CONFIG_CONTEXT_TRACKING_FORCE is being turned on when
>>> we have CONFIG_NO_HZ_FULL enabled.  The CONTEXT_TRACKING_FORCE is
>>> causing some noticeable overhead, for example:
>>>
>>> dd if=/dev/zero bs=$DD_BS count=$DD_COUNT | cat | cat | cat | dd
>>> of=/dev/null
>>>
>>> ..this takes about 145 seconds with CONTEXT_TRACKING_FORCE enabled and
>>> about 83 seconds with it disabled.
>>>
>>> I suggest that we should revert back to CONFIG_NO_HZ_IDLE and make sure
>>> CONFIG_CONTEXT_TRACKING_FORCE is disabled.
>>>
>>> I believe this explains the huge increase in duration of the dd_copy
>>> test in the QA tests, see the dd_copy graph and the blue line that shows
>>> the duration (in seconds) of the copy:
>>> http://reports.qa.ubuntu.com/power/hardware/arch/amd64/?size=big
>>>
>>> Colin
>>>
>>
>> So it looks like we ought to fall back to NO_HZ_IDLE. Do you know of any
>> adverse impacts this change might incur with regard to power
>> consumption, latency, or performance with other workloads ?
>>
> I guess the answer is no, perhaps I should run a set of rigorous
> benchmarking next week to find out.
> 
> Colin
> 

I think both Documentation/timers/NO_HZ.txt [0] and kernel/time/Kconfig
imply that CONFIG_NO_HZ_FULL=y is not a good idea for Ubuntu's generic
config.


[0]: "Unless you are running realtime applications or certain types of
HPC workloads, you will normally -not- want this option."




More information about the kernel-team mailing list