Call for TESTING (was Re: [1.7.0-50] scp progress counter flies through first 175 MB or so)

Corinna Vinschen corinna-cygwin@cygwin.com
Wed Jul 1 09:26:00 GMT 2009


On Jun 30 14:23, Brian Ford wrote:
> On Tue, 30 Jun 2009, Warren Young wrote:
> 
> > Corinna Vinschen wrote:
> > > What's still not clear is why the ssh process takes so much CPU.
> >
> > Too many buffer copies?  It takes a surprising amount of CPU power to
> > fill a gigabit pipe from userland.  Double or triple that workload with
> > unnecessary copies, and there goes your transfer rate, evaporating on
> > the wind.

The data is copied only once, from the application buffer to the
underlying WinSock socket buffer and vice versa.  There's no additional
copy of buffer data in Cygwin.

> Even more so for context switches ;-):
> 
> http://www.cygwin.com/ml/cygwin-developers/2007-10/msg00040.html
> 
> although this performance penalty was removed from read/write and friends:
> 
> http://www.cygwin.com/ml/cygwin-developers/2007-12/msg00004.html
> 
> it is still present for send/recv and friends.

I removed the sig_dispatch_pending calls from send/recv and friends.
Note, however, that this has no influence on the ssh/scp results we were
talking about in this thread.  ssh/scp are using read/write calls.

Anyway, using ssh/scp with the latest from CVS looks much better now.
It doesn't eat up all CPU anymore and the performance looks pretty
well as far as I can tell.


Corinna

-- 
Corinna Vinschen                  Please, send mails regarding Cygwin to
Cygwin Project Co-Leader          cygwin AT cygwin DOT com
Red Hat

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple



More information about the Cygwin mailing list