From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 16445 invoked by alias); 11 Jul 2014 10:35:47 -0000 Mailing-List: contact cygwin-help@cygwin.com; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner@cygwin.com Mail-Followup-To: cygwin@cygwin.com Received: (qmail 16422 invoked by uid 89); 11 Jul 2014 10:35:46 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-5.9 required=5.0 tests=AWL,BAYES_00 autolearn=ham version=3.3.2 X-HELO: calimero.vinschen.de Received: from aquarius.hirmke.de (HELO calimero.vinschen.de) (217.91.18.234) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Fri, 11 Jul 2014 10:35:42 +0000 Received: by calimero.vinschen.de (Postfix, from userid 500) id 31CF38E14EC; Fri, 11 Jul 2014 12:35:40 +0200 (CEST) Date: Fri, 11 Jul 2014 10:35:00 -0000 From: Corinna Vinschen To: cygwin@cygwin.com Subject: Re: Severe performance degradation of writev Message-ID: <20140711103540.GA18114@calimero.vinschen.de> Reply-To: cygwin@cygwin.com Mail-Followup-To: cygwin@cygwin.com References: <20140707101049.GI1803@calimero.vinschen.de> <20140707134137.GK1803@calimero.vinschen.de> <53BD7161.5030209@acm.org> <20140709170321.GA9946@calimero.vinschen.de> <53BD791F.6040807@acm.org> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="bp/iNruPH9dso1Pn" Content-Disposition: inline In-Reply-To: <53BD791F.6040807@acm.org> User-Agent: Mutt/1.5.23 (2014-03-12) X-SW-Source: 2014-07/txt/msg00133.txt.bz2 --bp/iNruPH9dso1Pn Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Content-length: 2259 On Jul 9 10:17, David Rothenberger wrote: > Corinna Vinschen wrote: > > On Jul 9 09:44, David Rothenberger wrote: > >> Corinna Vinschen wrote: > >>> On Jul 7 12:10, Corinna Vinschen wrote: > >>>> On Jul 7 07:28, jojelino wrote: > >>>>> 2008-07-27 Corinna Vinschen > >>>>>=20 > >>>>> * fhandler_socket.cc (fhandler_socket::send_internal): > >>>>> Send never more then 64K bytes at once. For blocking > >>>>> sockets, loop until entire data has been sent or an error > >>>>> occurs. (fhandler_socket::sendto): Drop code which sends on > >>>>> 64K bytes. (fhandler_socket::sendmsg): Ditto. > >>>>>=20 > >>>>> This commit added workaround for KB823764. but it has > >>>>> brought another performance issue when writev sends <64k of > >>>>> data. > >>>>=20 > >>>> That's why the code contains that FIXME comment. If you have > >>>> a good idea for simple code to split a message into the > >>>> least number of pieces to minimize the number of WsaSendTo > >>>> calls... > >>>=20 > >>> I took a stab at the code and I think the new version improves=20 > >>> writing multiple small buffers a lot. In my testing it still > >>> works in other scenarios, too, but I would be very grateful if > >>> somebody could have a critical look into my code changes as > >>> posted in=20 > >>> https://cygwin.com/ml/cygwin-cvs/2014-q3/msg00003.html > >>>=20 > >>> I uploaded a new developer snapshot to=20 > >>> http://cygwin.com/snapshots/ Please give it a thorough try. > >>=20 > >> FWIW, this snapshot fixed a recent performance degradation for me > >> when doing ssh/rsync transfers within my local network at work. > >> These transfers had run at about 25 MB/s but recently degraded to > >> about 500 kB/s. The snapshot restored the original performance. > >=20 > > Cool. Is the result still intact? It's kind of simple to have=20 > > lots of performance if the code just doesn't send everything... :} >=20 > Details, details. :) Yeah, yeah, I know, I'm nitpicking here ;) > Yeah, I just tried a transfer and verified the checksum of the > transferred file. It worked fine. Thanks! Corinna --=20 Corinna Vinschen Please, send mails regarding Cygwin to Cygwin Maintainer cygwin AT cygwin DOT com Red Hat --bp/iNruPH9dso1Pn Content-Type: application/pgp-signature Content-length: 819 -----BEGIN PGP SIGNATURE----- Version: GnuPG v1 iQIcBAEBAgAGBQJTv738AAoJEPU2Bp2uRE+gYlAP/3olYKWnV3C1TmTZetS1SnPD VkaQ51KmooAprL51uCXZRL14HghMKzp+bbDhptUf7hvJzgswUZF464/FjE77zMPx PDtKic8BRLC/uhPdrVKDqlghR9nbWoqQBptNQrfG6AmhajIU0HnhLvII1e4+ajU4 PzEGwKkzYiH1OyKtUuZUpLnMNdJ6wxqavL/n6YmVDjF84Q+MGg49EgEwAAgVpZKa p1N9iZ0FaDsGrPkPhiaeQp0pVxG888ipGuKIIrm2ymXNPfBxfzYd+PRWg7Q48ZH9 9azT85fAtE0ogGVnzbYtsyFmekyTgFfo+XKQOYjiA9bkuaviQ3Z/cDP27cMGeq8h A0aLz/tIj8sD4PO5XH8ftcyHWGcyiIfw/newjftwPGib2EUxunjU08WGupRBPj3s Pcmpq2r1juR7xEVTGh0Goa1O4VLUC4WN1x6MGc2JlzhD7albnupUy8MJaME1eWOL 5ynozZa+BVfooE1tAOVjAQgGhkbUSEX/0bHOhFmY13IHbXPi2cpsDvnUSmTAW7wx 6QhirZM5Lv0IB9RsnGZ+fBeTJt6RY8jW5NjeSlPKm9WCXOWOyDjpmNldfbclkQuF EmYAHFeghdtdLMslCaA6Pjsn7Fo0p0464ZnYG54iAoW4SxCbswsQrjNn6JaHQhZp USUJnUq1ZTHzchn5y9bk =S62M -----END PGP SIGNATURE----- --bp/iNruPH9dso1Pn--