Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 11 Apr 2002 09:01:17 -0700
From:      Denis Serenyi <dserenyi@panasas.com>
To:        Andrew Gallatin <gallatin@cs.duke.edu>
Cc:        freebsd-hackers@freebsd.org
Subject:   Re: SSE bcopy
Message-ID:  <5B6FF41A-4D65-11D6-9B98-003065675568@panasas.com>
In-Reply-To: <15541.37586.404951.505010@grasshopper.cs.duke.edu>

next in thread | previous in thread | raw e-mail | index | archive | help
I don't think there will be a problem with releasing my source code. 
That is, if it works and is truly a performance win :)

There are some PDF docs available on Intel's web site that have sample 
code for an SSE bcopy, and give performance results (in particular, 
"Block Copy Using Pentium III Streaming SIMD Extensions"). It seems to 
be about 60 - 80% faster than using MMX instructions. However, when you 
use SSE to store data in the destination memory location, you bypass the 
processor's caches. So, if you were to touch the data soon after the 
bcopy, it is no win at all.

For what I'm trying, I'm not going to be touching the data, so it's ok. 
However, it may only be useful for freebsd in general as an alternative 
to the existing bcopy.

Also, there is the hairy issue of saving the FP state before using these 
registers. Intel's paper describes a way to do this where you don't have 
to save the entire FP state - just 32 bytes of it.

Thanks for your help, folks. I'll give the patch a try.

On Thursday, April 11, 2002, at 06:42 AM, Andrew Gallatin wrote:

> As David says, have a look at
> http://kobe1995.net/~kaz/FreeBSD/SSE.en.html  There is a patch there
> for 4.3.
>
> What are the performance implications to an SSE bcopy?  How much
> faster is it than a normal bcopy?
>
> Would you consider releasing your code under a BSD license so that
> others could play with it, and possibly integrate it (or something
> based on it) into FreeBSD?


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?5B6FF41A-4D65-11D6-9B98-003065675568>