[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20070409135729.a466e9cb.akpm@linux-foundation.org>
Date: Mon, 9 Apr 2007 13:57:29 -0700
From: Andrew Morton <akpm@...ux-foundation.org>
To: Ravikiran G Thirumalai <kiran@...lex86.org>
Cc: linux-kernel@...r.kernel.org,
"Eric W. Biederman" <ebiederm@...ssion.com>
Subject: Re: [patch] Pad irq_desc to internode cacheline size
On Mon, 9 Apr 2007 12:56:27 -0700
Ravikiran G Thirumalai <kiran@...lex86.org> wrote:
> We noticed a drop in n/w performance due to the irq_desc being cacheline
> aligned rather than internode aligned. We see 50% of expected performance
> when two e1000 nics local to two different nodes have consecutive irq
> descriptors allocated, due to false sharing.
>
> Note that this patch does away with cacheline padding for the UP case, as it
> does not seem useful for UP configurations.
>
> Signed-off-by: Ravikiran Thirumalai <kiran@...lex86.org>
> Signed-off-by: Shai Fultheim <shai@...lex86.org>
>
> Index: linux-2.6.21-rc5/include/linux/irq.h
> ===================================================================
> --- linux-2.6.21-rc5.orig/include/linux/irq.h 2007-04-09 10:16:23.560848473 -0700
> +++ linux-2.6.21-rc5/include/linux/irq.h 2007-04-09 10:16:45.401177929 -0700
> @@ -175,7 +175,7 @@ struct irq_desc {
> struct proc_dir_entry *dir;
> #endif
> const char *name;
> -} ____cacheline_aligned;
> +} ____cacheline_internodealigned_in_smp;
>
> extern struct irq_desc irq_desc[NR_IRQS];
This will consume nearly 4k per irq won't it? What is the upper bound
here, across all configs and all hardware?
Is VSMP the only arch which has ____cacheline_internodealigned_in_smp
larger than ____cacheline_aligned_in_smp?
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists