Subject: Re: AltiVec in the kernel

From: [email-masked] (Linas Vepstas)
Date: Wed, 19 Jul 2006 13:57:59 -0500

On Wed, Jul 19, 2006 at 08:38:21PM +0200, Johannes Berg wrote:
> On Thu, 2006-07-20 at 04:19 +1000, Paul Mackerras wrote:
> > Linas Vepstas writes:
> > 
> > > But perhaps, in principle, couldn't one run four independent streams 
> > > in parallel?  Thus, for example, on an SSL-enabled web server, one 
> > > could service multiple encryption/decryption threads at once. 
> > 
> > Generally that would work.  If one had 4 separate streams to compute a
> > SHA1 of, one could do all 4 at once with altivec.  It would have to be
> > 4 separate streams though, not 4 parts of a single stream.
> 
> I'd think it'd be pretty hard to get a real benefit from this because
> the data is going to come from 4 totally different places, hence you
> can't just load a single vector register and get data for all 4
> streams...

Dohh. Right. I actually thought that while writing the email, and then
it eveporated from my head before I hit the send button.  One would 
have to copy the incoming data into vectors, and the mem access latency
would probably overwhelm the performance gain (per "hot cache" as Paul
discussed).

--linas