Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 29 Mar 2005 08:54:04 -0800
From:      David Leimbach <dleimbac@gmail.com>
To:        Peter Jeremy <PeterJeremy@optushome.com.au>
Cc:        hackers@freebsd.org
Subject:   Re: Fwd: 5-STABLE kernel build with icc broken
Message-ID:  <5bbfe7d405032908542b2b0c71@mail.gmail.com>
In-Reply-To: <20050329111107.GD69824@cirb503493.alcatel.com.au>
References:  <423C15C5.6040902@fsn.hu> <20050327133059.3d68a78c@Magellan.Leidinger.net> <20050327134044.GM78512@silverwraith.com> <20050327162839.2fafa6aa@Magellan.Leidinger.net> <5bbfe7d405032823144fc1af7b@mail.gmail.com> <5bbfe7d405032823232103d537@mail.gmail.com> <20050329111107.GD69824@cirb503493.alcatel.com.au>

next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, 29 Mar 2005 21:11:07 +1000, Peter Jeremy
<PeterJeremy@optushome.com.au> wrote:
> On Mon, 2005-Mar-28 23:23:19 -0800, David Leimbach wrote:
> >meant to send this to the list too... sorry
> >> Are you implying DragonFly uses FPU/SIMD?  For that matter does any kernel?
> >
> >I believe it does use SIMD for some of it's fast memcopy stuff for
> >it's messaging system
> >actually.  I remember Matt saying he was working on it.
> >
> >http://leaf.dragonflybsd.org/mailarchive/kernel/2004-04/msg00262.html
> 
> That's almost a year ago and specifically for the amd64.  Does anyone
> know what the results were?

Actually I don't remember precisely what came of it, but I do remember that 
we had some interesting stability issues while Matt worked out some bugs around
that time, I think they were related to the SIMD stuff.

> 
> >If you can manage the alignment issues it can be a huge win.
> 
> For message passing within the kernel, you should be able to mandate
> alignment as part of the API.
> 
> I see the bigger issue being the need to save/restore the SIMD
> engine's state during a system call.  Currently, this is only saved on
> if a different process wants to use the SIMD engine.  For MMX, the
> SIMD state is the FPU state - which is non-trivial.  The little
> reading I've done suggests that SSE and SSE2 are even larger.
> 
> Saving the SIMD state would be more expensive that using integer
> registers for small (and probably medium-sized) copies.
> 

Yes, you'd have to have a fairly smart copy to know when to avoid the
setup overhead.  Apple's bcopy stuff does a lot of checking if I recall.  
It's been a while since I've looked at that either.  [the stuff that's mapped
into the COMM_PAGE of Mac OS X 10.3.x processes]

Dave

> --
> Peter Jeremy
>



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