Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 16 Jan 2007 18:06:26 -0500
From:      John Baldwin <jhb@freebsd.org>
To:        freebsd-arch@freebsd.org
Cc:        Attilio Rao <attilio@freebsd.org>, Ivan Voras <ivoras@fer.hr>
Subject:   Re: [PATCH] Mantaining turnstile aligned to 128 bytes in i386 CPUs
Message-ID:  <200701161806.27245.jhb@freebsd.org>
In-Reply-To: <3bbf2fe10701161454m74bd9356i3999187515c60596@mail.gmail.com>
References:  <3bbf2fe10607250813w8ff9e34pc505bf290e71758@mail.gmail.com> <eoji7s$cit$2@sea.gmane.org> <3bbf2fe10701161454m74bd9356i3999187515c60596@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Tuesday 16 January 2007 17:54, Attilio Rao wrote:
> 2007/1/16, Ivan Voras <ivoras@fer.hr>:
> > Kip Macy wrote:
> > > x86 pre-P4 had 32-byte cache lines. Thus older processors will not 
benefit.
> >
> > But it does seem to hurt the performance a bit - maybe it's time to add
> > another CPU option like I586_CPU and I686_CPU?
> 
> Well, it is my feeling that probabilly the align_cache parameter
> should be a run-time settled parameter (in particular for ia32 CPUs
> which changed a lot along the years).

Yes.  I think UMA_ALIGN_CACHE should be a magic cookie value and that
the MD code should provide a cache line size to uma(4) during bootup,
and I think you can probably just axe UMA_ALIGN_SYNC and use UMA_ALIGN_CACHE 
for the turnstile and sleep queue zones.

-- 
John Baldwin



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200701161806.27245.jhb>