clone performance of experimental new http client library.

Nikolaus.Schueler at lantiq.com Nikolaus.Schueler at lantiq.com
Tue Mar 6 06:50:11 CST 2012


> -----Original Message-----
> From: Sedlock David (LQKG IT RDS)
> Sent: Tuesday, March 06, 2012 1:46 PM
> To: Schueler Nikolaus (LQKG IT RDS)
> Subject: FW: clone performance of experimental new http client
> library.
> 
> 
> 
> > -----Original Message-----
> > From: mercurial-devel-bounces at selenic.com [mailto:mercurial-
> devel-
> > bounces at selenic.com] On Behalf Of Sedlock David (LQKG IT RDS)
> > Sent: Wednesday, October 19, 2011 11:23 AM
> > To: mercurial-devel at selenic.com
> > Subject: clone performance of experimental new http client
> library.
> >
> > Hi all,
> >
> > Did anyone benchmark the peformance of the experimental new http
> client
> > library? After experiencing significantly longer clone times with
> 1.9.2, I
> > performed the following benchmark:
> >
> > ***1.9.2 client with 1.9.2 server, ui.usehttp2=False
> > $ hg version
> > Mercurial Distributed SCM (version 1.9.2-lantiq-rc1)
> > $ hg --time clone -U
> https://mtstest.lantiq.com/~hgtest/repo/openwrt/luci/ --
> > config ui.usehttp2=False
> > Time: real 21.800 secs (user 9.670+0.000 sys 0.650+0.000)
> >
> > ***1.9.2 client with 1.9.2 server, ui.usehttp2=True
> > $ hg version
> > Mercurial Distributed SCM (version 1.9.2-lantiq-rc1)
> > $ hg --time clone -U
> https://mtstest.lantiq.com/~hgtest/repo/openwrt/luci/ --
> > config ui.usehttp2=True
> > Time: real 63.310 secs (user 33.790+0.000 sys 21.170+0.000)
> >
> > 3x slower.
> >
> > Regards,
> > David
> >
> > Lantiq Configuration Management Solutions
> > http://wiki.lantiq.com/display/IT/Configuration+Management
> > __________________________________
> > Lantiq Beteiligungs- GmbH & Co.KG
> > Registered Office: München, Commercial Register: Amtsgericht
> München, HRA
> > 94167
> > Limited Partner (Kommanditist): Lantiq Intermediate Holdco S.à
> r.l
> > General Partner (Komplementär): Lantiq Beteiligungs Verwaltungs-
> GmbH
> > Registered Office: München, Commercial Register: Amtsgericht
> München HRB
> > 180523
> > Managing Directors (Geschäftsführer): Christian Wolff (CEO), Dr.
> Klaus Gohlke
> > (CFO) ___________________________________________
> > Important Note: This e-mail may contain trade secrets or
> privileged,
> > undisclosed or otherwise confidential information. If you have
> received this
> > e-mail in error, you are hereby notified that any review, copying
> or
> > distribution of it is strictly prohibited. Please inform us
> immediately and
> > destroy the original transmittal. Thank you for your cooperation.
> >
> >
> > _______________________________________________
> > Mercurial-devel mailing list
> > Mercurial-devel at selenic.com
> > http://selenic.com/mailman/listinfo/mercurial-devel

Hi all,

as a follow-up to an issue that was discussed last October concering
the experimental http library, performance is still bad with ui.usehttp2 = True in hg 2.1.


$ hg version
Mercurial Distributed SCM (version 2.1-lantiq)
(see http://mercurial.selenic.com for more information)
This distribution has been customized for Lantiq.
...

$ hg --time clone -U https://mtstest.lantiq.com/~hgtest/repo/openwrt/core/ core.usehttp2False --config ui.usehttp2=False 
...
added 10681 changesets with 42412 changes to 18309 files (+2 heads)                                                                         
Time: real 95.980 secs (user 71.910+0.000 sys 4.850+0.000)


$ hg --time clone -U https://mtstest.lantiq.com/~hgtest/repo/openwrt/core/ core.usehttp2True --config ui.usehttp2=True 
...
added 10681 changesets with 42412 changes to 18309 files (+2 heads)                                                                         
Time: real 4185.030 secs (user 2260.120+0.000 sys 1911.340+0.000)

I took a look at the code snippet mentioned in the replies:

if self._chunked:
  self._chunked_parsedata(data)
  return
elif self._body is not None:
  self._body += data
  return

It's still the same.

What is the state of this issue? Can I help in fixing it?

Regards 

Nik



More information about the Mercurial-devel mailing list