Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1760920Ab3ICWh3 (ORCPT ); Tue, 3 Sep 2013 18:37:29 -0400 Received: from mail-we0-f171.google.com ([74.125.82.171]:42811 "EHLO mail-we0-f171.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754287Ab3ICWh1 (ORCPT ); Tue, 3 Sep 2013 18:37:27 -0400 MIME-Version: 1.0 Reply-To: sedat.dilek@gmail.com In-Reply-To: References: <1375758759-29629-1-git-send-email-Waiman.Long@hp.com> <1375758759-29629-2-git-send-email-Waiman.Long@hp.com> <1377751465.4028.20.camel@pasglop> <20130829070012.GC27322@gmail.com> <52200DAE.2020303@hp.com> Date: Wed, 4 Sep 2013 00:37:25 +0200 Message-ID: Subject: Re: [PATCH v7 1/4] spinlock: A new lockref structure for lockless update of refcount From: Sedat Dilek To: Linus Torvalds Cc: Waiman Long , Ingo Molnar , Benjamin Herrenschmidt , Alexander Viro , Jeff Layton , Miklos Szeredi , Ingo Molnar , Thomas Gleixner , linux-fsdevel , Linux Kernel Mailing List , Peter Zijlstra , Steven Rostedt , Andi Kleen , "Chandramouleeswaran, Aswin" , "Norton, Scott J" Content-Type: text/plain; charset=UTF-8 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2134 Lines: 53 On Sun, Sep 1, 2013 at 5:32 PM, Linus Torvalds wrote: > On Sun, Sep 1, 2013 at 3:01 AM, Sedat Dilek wrote: >> >> Looks like this is now 10x faster: ~2.66Mloops (debug) VS. >> ~26.60Mloops (no-debug). > > Ok, that's getting to be in the right ballpark. > > But your profile is still odd. > >> Samples: 159K of event 'cycles:pp', Event count (approx.): 76968896763 >> 12,79% t_lockref_from- [kernel.kallsyms] [k] irq_return >> 4,36% t_lockref_from- [kernel.kallsyms] [k] __ticket_spin_lock > > If you do the profile with "-g", what are the top callers of this? You > shouldn't see any spinlock load from the path lookup, but you have all > these other things going on.. > >> 4,36% t_lockref_from- [kernel.kallsyms] [k] __acct_update_integrals >> 4,07% t_lockref_from- [kernel.kallsyms] [k] user_exit >> 3,12% t_lockref_from- [kernel.kallsyms] [k] local_clock >> 2,83% t_lockref_from- [kernel.kallsyms] [k] lockref_get_or_lock >> 2,73% t_lockref_from- [kernel.kallsyms] [k] kmem_cache_alloc >> 2,62% t_lockref_from- [kernel.kallsyms] [k] __d_lookup_rcu > > You're spending more time on the task stats than on the actual lookup. > Maybe you should turn off CONFIG_TASKSTATS..But why that whole > irq_return thing? Odd. > [ init/Kconfig ] ... config TASKSTATS bool "Export task/process statistics through netlink" depends on NET <--- Difficult to disable it?! default n help Export selected statistics for tasks/processes through the generic netlink interface. Unlike BSD process accounting, the statistics are available during the lifetime of tasks/processes as responses to commands. Like BSD accounting, they are sent to user space on task exit. Say N if unsure. ... - Sedat - -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/