From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S966143AbcIVVmR (ORCPT ); Thu, 22 Sep 2016 17:42:17 -0400 Received: from Galois.linutronix.de ([146.0.238.70]:39481 "EHLO Galois.linutronix.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S965056AbcIVVmP (ORCPT ); Thu, 22 Sep 2016 17:42:15 -0400 Date: Thu, 22 Sep 2016 23:39:00 +0200 (CEST) From: Thomas Gleixner To: Nicolai Stange cc: John Stultz , linux-kernel@vger.kernel.org Subject: Re: [RFC v7 00/23] adapt clockevents frequencies to mono clock In-Reply-To: <874m59cpos.fsf@gmail.com> Message-ID: References: <20160916200851.9273-1-nicstange@gmail.com> <877fa641aj.fsf@gmail.com> <874m59cpos.fsf@gmail.com> User-Agent: Alpine 2.20 (DEB 67 2015-01-07) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, 21 Sep 2016, Nicolai Stange wrote: > Thomas Gleixner writes: > > > On Wed, 21 Sep 2016, Nicolai Stange wrote: > >> Thomas Gleixner writes: > >> > Have you ever measured the overhead of the extra work which has to be done > >> > in clockevents_adjust_all_freqs() ? > >> > >> Not exactly, I had a look at its invocation frequency which seems to > >> decay exponentially with uptime, presumably because the NTP error > >> approaches zero. > >> > >> However, I've just gathered a function_graph ftrace on my Intel > >> i7-4800MQ (Haswell, 8HTs): > >> > >> # TIME CPU DURATION FUNCTION CALLS > >> # | | | | | | | | > >> 85.287027 | 0) 0.899 us | clockevents_adjust_all_freqs(); > >> 85.288026 | 0) 0.759 us | clockevents_adjust_all_freqs(); > >> 85.289026 | 0) 0.735 us | clockevents_adjust_all_freqs(); > >> 85.290026 | 0) 0.671 us | clockevents_adjust_all_freqs(); > >> 149.503656 | 2) 2.477 us | clockevents_adjust_all_freqs(); > > > > That's not that bad. Though I'd like to see numbers for ARM (especially the > > less powerful SoCs) as well. > > On a Raspberry Pi 2B (bcm2836, ARMv7) with CONFIG_SMP=y, the mean over > ~5300 samples is 5.14+/-1.04us with a max of 11.15us. So why is the variance that high? You have an outlier on that intel as well which might be caused by NMI, but it might also be a systematic issue depending on the input parameters. 11 us on that ARM worries me. Thanks, tglx