[darcs-users] darcs patch: add exception to haskell_policy.sh for D... (and 61 more)

Eric Kow kowey at darcs.net
Wed Oct 29 17:12:25 UTC 2008


On Wed, Oct 29, 2008 at 10:52:05 -0400, David Roundy wrote:
> I don't think I'll have time to review this bundle today, but had a
> question I'd like to ask even before I review it.  I presume this has
> been benchmarked against the pre-salvo-8 version.  How does it affect
> timings? Not that timings are everything, but it'd be nice to see if
> it speeds things up or (although it seems unlikely) slows things
> down, and if so, by how much.

Unfortunately, I have been flaking out on getting darcs the kind of
benchmarking framework we need.

What I have is a crude shell script that runs time darcs on a bunch of
commands in the GHC repo.  I have run it once with the pre-and-post
salvo 8 versions of darcs.  The post-salvo-8 version seems to shave off
a few subseconds on small commands, but adds some minutes onto the
annotate command (bah!) But do take these results with the usual salt!

For the interested, the code in question is at
  darcs get http://code.haskell.org/darcs/zoo
And anybody who is in the darcs group is welcome to push to that
repository.

For this particular test, I used the scripts ./fetch-big-zoo.sh and
./profile-big-zoo.sh accordingly (although here I commented out the
profiling bits and just used time).  This benchmarking framework needs
work!  For one thing, we could really use some sort of 'instant'
visualisation that tells us at a glance what is going on with the
results.  The programming language shootout may be a good source of
inspiration for this.  Help wanted :-)

-- 
Eric Kow <http://www.nltg.brighton.ac.uk/home/Eric.Kow>
PGP Key ID: 08AC04F9
-------------- next part --------------
=== get-complete ===
Copying pristine 34/84 : describe-unexpected.hs
Copying pristine 170/199 : stat2resid.prl
Copying pristine 299/422 : FileLock.c
Copying pristine 448/479 : Proftimer.h
Copying pristine 584/632 : CLabel.hs
Copying pristine 680/732 : IOEnv.hs
Copying pristine 766/795 : FloatIn.lhs
Copying pristine 896/920 : CgExpr.lhs
Copying pristine 1083/1100 : core.bib
Copying patches 43/19057
Copying patches 69/19057
Copying patches 115/19057
Copying patches 182/19057
Copying patches 249/19057
Copying patches 303/19057
Copying patches 371/19057
Copying patches 446/19057
Copying patches 521/19057
Copying patches 603/19057
Copying patches 671/19057
Copying patches 756/19057
Copying patches 839/19057
Copying patches 915/19057
Copying patches 1011/19057
Copying patches 1087/19057
Copying patches 1173/19057
Copying patches 1274/19057
Copying patches 1377/19057
Copying patches 1469/19057
Copying patches 1564/19057
Copying patches 1599/19057
Copying patches 1690/19057
Copying patches 1770/19057
Copying patches 1859/19057
Copying patches 1936/19057
Copying patches 2037/19057
Copying patches 2125/19057
Copying patches 2212/19057
Copying patches 2287/19057
Copying patches 2377/19057
Copying patches 2477/19057
Copying patches 2585/19057
Copying patches 2684/19057
Copying patches 2789/19057
Copying patches 2883/19057
Copying patches 2973/19057
Copying patches 3080/19057
Copying patches 3189/19057
Copying patches 3297/19057
Copying patches 3385/19057
Copying patches 3491/19057
Copying patches 3596/19057
Copying patches 3698/19057
Copying patches 3800/19057
Copying patches 3897/19057
Copying patches 4000/19057
Copying patches 4106/19057
Copying patches 4210/19057
Copying patches 4315/19057
Copying patches 4408/19057
Copying patches 4513/19057
Copying patches 4622/19057
Copying patches 4725/19057
Copying patches 4839/19057
Copying patches 4909/19057
Copying patches 5006/19057
Copying patches 5094/19057
Copying patches 5201/19057
Copying patches 5305/19057
Copying patches 5389/19057
Copying patches 5486/19057
Copying patches 5580/19057
Copying patches 5685/19057
Copying patches 5789/19057
Copying patches 5883/19057
Copying patches 5989/19057
Copying patches 6096/19057
Copying patches 6198/19057
Copying patches 6307/19057
Copying patches 6386/19057
Copying patches 6484/19057
Copying patches 6585/19057
Copying patches 6690/19057
Copying patches 6795/19057
Copying patches 6885/19057
Copying patches 6981/19057
Copying patches 7077/19057
Copying patches 7176/19057
Copying patches 7276/19057
Copying patches 7364/19057
Copying patches 7470/19057
Copying patches 7574/19057
Copying patches 7670/19057
Copying patches 7768/19057
Copying patches 7859/19057
Copying patches 7961/19057
Copying patches 8066/19057
Copying patches 8162/19057
Copying patches 8270/19057
Copying patches 8339/19057
Copying patches 8429/19057
Copying patches 8524/19057
Copying patches 8615/19057
Copying patches 8705/19057
Copying patches 8785/19057
Copying patches 8882/19057
Copying patches 8989/19057
Copying patches 9096/19057
Copying patches 9199/19057
Copying patches 9287/19057
Copying patches 9386/19057
Copying patches 9488/19057
Copying patches 9594/19057
Copying patches 9671/19057
Copying patches 9759/19057
Copying patches 9856/19057
Copying patches 9945/19057
Copying patches 10040/19057
Copying patches 10135/19057
Copying patches 10204/19057
Copying patches 10305/19057
Copying patches 10403/19057
Copying patches 10502/19057
Copying patches 10606/19057
Copying patches 10699/19057
Copying patches 10789/19057
Copying patches 10878/19057
Copying patches 10976/19057
Copying patches 11067/19057
Copying patches 11165/19057
Copying patches 11255/19057
Copying patches 11349/19057
Copying patches 11442/19057
Copying patches 11547/19057
Copying patches 11609/19057
Copying patches 11700/19057
Copying patches 11803/19057
Copying patches 11898/19057
Copying patches 12006/19057
Copying patches 12091/19057
Copying patches 12194/19057
Copying patches 12302/19057
Copying patches 12404/19057
Copying patches 12506/19057
Copying patches 12598/19057
Copying patches 12701/19057
Copying patches 12802/19057
Copying patches 12910/19057
Copying patches 13012/19057
Copying patches 13090/19057
Copying patches 13192/19057
Copying patches 13291/19057
Copying patches 13399/19057
Copying patches 13508/19057
Copying patches 13594/19057
Copying patches 13701/19057
Copying patches 13799/19057
Copying patches 13904/19057
Copying patches 13997/19057
Copying patches 14092/19057
Copying patches 14200/19057
Copying patches 14306/19057
Copying patches 14409/19057
Copying patches 14513/19057
Copying patches 14601/19057
Copying patches 14707/19057
Copying patches 14802/19057
Copying patches 14908/19057
Copying patches 15012/19057
Copying patches 15075/19057
Copying patches 15164/19057
Copying patches 15249/19057
Copying patches 15343/19057
Copying patches 15445/19057
Copying patches 15527/19057
Copying patches 15626/19057
Copying patches 15721/19057
Copying patches 15813/19057
Copying patches 15909/19057
Copying patches 15987/19057
Copying patches 16078/19057
Copying patches 16189/19057
Copying patches 16285/19057
Copying patches 16389/19057
Copying patches 16484/19057
Copying patches 16580/19057
Copying patches 16677/19057
Copying patches 16762/19057
Copying patches 16852/19057
Copying patches 16948/19057
Copying patches 17057/19057
Copying patches 17166/19057
Copying patches 17278/19057
Copying patches 17370/19057
Copying patches 17458/19057
Copying patches 17564/19057
Copying patches 17657/19057
Copying patches 17743/19057
Copying patches 17827/19057
Copying patches 17926/19057
Copying patches 18031/19057
Copying patches 18122/19057
Copying patches 18224/19057
Copying patches 18303/19057
Copying patches 18378/19057
Copying patches 18468/19057
Copying patches 18555/19057
Copying patches 18636/19057
Copying patches 18713/19057
Copying patches 18817/19057
Copying patches 18897/19057
Copying patches 18986/19057
Copying patches 19028/19057
Copying patches 19052/19057

real	3m37.167s
user	0m11.365s
sys	0m4.752s
=== get-lazy ===
Copying pristine 1027/1060 : packages.xml

real	0m1.165s
user	0m0.776s
sys	0m0.376s
=== unpull-10 ===
Reading pristine 47/508
Reading pristine 77/912
Reading pristine 106/1060
Reading pristine 138/1172
Reading pristine 202/1172
Reading pristine 302/1172
Reading pristine 395/1172
Reading pristine 492/1172
Reading pristine 595/1172
Reading pristine 698/1172
Reading pristine 770/1172
Reading pristine 890/1172
Reading pristine 1017/1172
Reading pristine 1187/1172
Writing inventory 1/2 : 
Synchronizing pristine 768/806

real	0m23.728s
user	0m11.201s
sys	0m0.936s
=== pull-10 ===
Writing inventory 1/2 : 

real	0m4.431s
user	0m4.212s
sys	0m0.188s
=== unpull-100 ===
Reading pristine 125/1172
Optimizing inventory 5436/18957
Writing inventory 1/1 : 
Reading pristine 230/1172
Writing pristine 336/377
Writing pristine 545/568
Writing inventory 1/2 : 
Synchronizing pristine 778/807

real	0m58.372s
user	0m54.475s
sys	0m1.132s
=== pull-100 ===
Reading pristine 125/1177
Writing inventory 1/2 : 

real	0m46.523s
user	0m45.335s
sys	0m0.552s
=== whatsnew-empty ===

real	0m0.123s
user	0m0.088s
sys	0m0.036s
=== whatsnew-id-ego ===
Reading pristine 291/1172
Reading pristine 432/1172

real	0m4.551s
user	0m2.524s
sys	0m0.408s
=== revert ===
Reading pristine 290/1172
Reading pristine 291/1172
Reading pristine 432/1172
Reading pristine
Reading pristine

real	0m10.943s
user	0m8.665s
sys	0m2.480s
=== record ===
Reading pristine
Reading pristine
Writing pristine 102/153
Writing pristine 290/319
Optimizing inventory 90/92
Writing inventory 1/3 : 

real	0m10.634s
user	0m8.453s
sys	0m0.464s
=== unrecord ===
Optimizing inventory 89/91
Writing inventory 1/3 : 
Reading pristine 195/1172
Optimizing inventory 89/91
Writing inventory 1/3 : 
Synchronizing pristine 1012/1060

real	0m13.468s
user	0m13.121s
sys	0m0.260s
=== record-l ===
Reading pristine
Writing changes: 1747/5787
Reading pristine 338/1172
Writing inventory 1/3 : 

real	0m7.635s
user	0m7.256s
sys	0m0.440s
=== annotate ===

real	23m6.410s
user	7m25.196s
sys	0m18.169s
-------------- next part --------------
=== get-complete ===
Copying pristine 101/156 : Prims.hs
Copying pristine 291/412 : Threads.c
Copying pristine 472/533 : RtsConfig.h
Copying pristine 653/698 : HsUtils.lhs
Copying pristine 808/837 : MachCodeGen.hs
Copying pristine 898/920 : CgClosure.lhs
Copying pristine 991/1005 : doc
Copying pristine 1134/1145 : docbook-cheat-sheet.xml
Copying patches 23/19057
Copying patches 77/19057
Copying patches 110/19057
Copying patches 168/19057
Copying patches 231/19057
Copying patches 294/19057
Copying patches 359/19057
Copying patches 418/19057
Copying patches 491/19057
Copying patches 568/19057
Copying patches 649/19057
Copying patches 736/19057
Copying patches 808/19057
Copying patches 892/19057
Copying patches 974/19057
Copying patches 1031/19057
Copying patches 1107/19057
Copying patches 1150/19057
Copying patches 1245/19057
Copying patches 1347/19057
Copying patches 1424/19057
Copying patches 1514/19057
Copying patches 1598/19057
Copying patches 1682/19057
Copying patches 1763/19057
Copying patches 1848/19057
Copying patches 1940/19057
Copying patches 2011/19057
Copying patches 2110/19057
Copying patches 2201/19057
Copying patches 2308/19057
Copying patches 2419/19057
Copying patches 2515/19057
Copying patches 2623/19057
Copying patches 2725/19057
Copying patches 2834/19057
Copying patches 2913/19057
Copying patches 3005/19057
Copying patches 3110/19057
Copying patches 3223/19057
Copying patches 3331/19057
Copying patches 3425/19057
Copying patches 3528/19057
Copying patches 3631/19057
Copying patches 3729/19057
Copying patches 3837/19057
Copying patches 3938/19057
Copying patches 4026/19057
Copying patches 4121/19057
Copying patches 4224/19057
Copying patches 4318/19057
Copying patches 4408/19057
Copying patches 4504/19057
Copying patches 4610/19057
Copying patches 4710/19057
Copying patches 4804/19057
Copying patches 4891/19057
Copying patches 4958/19057
Copying patches 5054/19057
Copying patches 5159/19057
Copying patches 5260/19057
Copying patches 5342/19057
Copying patches 5435/19057
Copying patches 5536/19057
Copying patches 5638/19057
Copying patches 5740/19057
Copying patches 5834/19057
Copying patches 5931/19057
Copying patches 6039/19057
Copying patches 6141/19057
Copying patches 6231/19057
Copying patches 6323/19057
Copying patches 6413/19057
Copying patches 6514/19057
Copying patches 6619/19057
Copying patches 6717/19057
Copying patches 6809/19057
Copying patches 6909/19057
Copying patches 7004/19057
Copying patches 7100/19057
Copying patches 7199/19057
Copying patches 7282/19057
Copying patches 7377/19057
Copying patches 7484/19057
Copying patches 7582/19057
Copying patches 7673/19057
Copying patches 7758/19057
Copying patches 7858/19057
Copying patches 7964/19057
Copying patches 8068/19057
Copying patches 8144/19057
Copying patches 8245/19057
Copying patches 8347/19057
Copying patches 8453/19057
Copying patches 8544/19057
Copying patches 8640/19057
Copying patches 8723/19057
Copying patches 8822/19057
Copying patches 8920/19057
Copying patches 9021/19057
Copying patches 9121/19057
Copying patches 9215/19057
Copying patches 9311/19057
Copying patches 9412/19057
Copying patches 9516/19057
Copying patches 9615/19057
Copying patches 9705/19057
Copying patches 9797/19057
Copying patches 9902/19057
Copying patches 9997/19057
Copying patches 10095/19057
Copying patches 10187/19057
Copying patches 10290/19057
Copying patches 10393/19057
Copying patches 10488/19057
Copying patches 10591/19057
Copying patches 10681/19057
Copying patches 10783/19057
Copying patches 10868/19057
Copying patches 10962/19057
Copying patches 11053/19057
Copying patches 11151/19057
Copying patches 11252/19057
Copying patches 11358/19057
Copying patches 11456/19057
Copying patches 11558/19057
Copying patches 11655/19057
Copying patches 11753/19057
Copying patches 11859/19057
Copying patches 11958/19057
Copying patches 12066/19057
Copying patches 12144/19057
Copying patches 12248/19057
Copying patches 12355/19057
Copying patches 12459/19057
Copying patches 12552/19057
Copying patches 12639/19057
Copying patches 12739/19057
Copying patches 12843/19057
Copying patches 12949/19057
Copying patches 13043/19057
Copying patches 13127/19057
Copying patches 13227/19057
Copying patches 13330/19057
Copying patches 13437/19057
Copying patches 13537/19057
Copying patches 13619/19057
Copying patches 13715/19057
Copying patches 13808/19057
Copying patches 13914/19057
Copying patches 14009/19057
Copying patches 14110/19057
Copying patches 14204/19057
Copying patches 14308/19057
Copying patches 14409/19057
Copying patches 14504/19057
Copying patches 14614/19057
Copying patches 14697/19057
Copying patches 14794/19057
Copying patches 14896/19057
Copying patches 14997/19057
Copying patches 15104/19057
Copying patches 15188/19057
Copying patches 15287/19057
Copying patches 15379/19057
Copying patches 15487/19057
Copying patches 15585/19057
Copying patches 15673/19057
Copying patches 15777/19057
Copying patches 15873/19057
Copying patches 15974/19057
Copying patches 16062/19057
Copying patches 16154/19057
Copying patches 16251/19057
Copying patches 16348/19057
Copying patches 16448/19057
Copying patches 16548/19057
Copying patches 16629/19057
Copying patches 16728/19057
Copying patches 16803/19057
Copying patches 16915/19057
Copying patches 17019/19057
Copying patches 17116/19057
Copying patches 17221/19057
Copying patches 17323/19057
Copying patches 17426/19057
Copying patches 17534/19057
Copying patches 17614/19057
Copying patches 17712/19057
Copying patches 17815/19057
Copying patches 17909/19057
Copying patches 18013/19057
Copying patches 18096/19057
Copying patches 18199/19057
Copying patches 18293/19057
Copying patches 18400/19057
Copying patches 18498/19057
Copying patches 18576/19057
Copying patches 18683/19057
Copying patches 18791/19057
Copying patches 18879/19057
Copying patches 18979/19057
Copying patches 19022/19057
Copying patches 19052/19057

real	3m33.419s
user	0m11.521s
sys	0m4.700s
=== get-lazy ===
Copying pristine 1027/1060 : packages.xml

real	0m1.156s
user	0m0.864s
sys	0m0.288s
=== unpull-10 ===
Reading pristine 89/945
Reading pristine 138/1172
Reading pristine 168/1172
Reading pristine 218/1172
Reading pristine 285/1172
Reading pristine 361/1172
Reading pristine 434/1172
Reading pristine 514/1172
Reading pristine 557/1172
Reading pristine 628/1172
Reading pristine 714/1172
Reading pristine 790/1172
Reading pristine 903/1172
Reading pristine 1074/1172
Reading pristine 1206/1172
Writing inventory 1/2 : 
Writing pristine 230/261
Writing inventory 1/2 : 
Synchronizing pristine 95/138

real	0m24.463s
user	0m10.933s
sys	0m0.788s
=== pull-10 ===
Writing inventory 1/2 : 

real	0m4.327s
user	0m4.112s
sys	0m0.160s
=== unpull-100 ===
Reading pristine 125/1172
Optimizing inventory 5572/18957
Writing inventory 1/1 : 
Writing pristine 284/334
Optimizing inventory 403/405
Writing inventory 1/2 : 
Synchronizing pristine 775/807

real	0m58.056s
user	0m52.715s
sys	0m1.136s
=== pull-100 ===
Reading pristine 238/1177
Writing inventory 1/2 : 

real	0m44.091s
user	0m43.063s
sys	0m0.536s
=== whatsnew-empty ===

real	0m0.125s
user	0m0.088s
sys	0m0.036s
=== whatsnew-id-ego ===
Reading pristine 291/1172
Reading pristine 410/1172
Reading pristine 432/1172

real	0m5.838s
user	0m2.860s
sys	0m0.380s
=== revert ===
Reading pristine 290/1172
Reading pristine 296/1172
Reading pristine 432/1172
Reading pristine
Reading pristine

real	0m10.632s
user	0m8.241s
sys	0m2.540s
=== record ===
Reading pristine
Writing changes: 1249/5787
Reading pristine 344/1172
Writing inventory 1/3 : 

real	0m7.970s
user	0m7.460s
sys	0m0.516s
=== unrecord ===
Writing inventory 1/3 : 
Reading pristine 278/1172
Writing inventory 1/3 : 

real	0m9.855s
user	0m9.365s
sys	0m0.252s
=== record-l ===
Reading pristine
Writing changes: 3538/5787
Reading pristine 349/1172
Writing inventory 1/3 : 

real	0m7.513s
user	0m7.132s
sys	0m0.484s
=== annotate ===

real	27m24.653s
user	9m52.969s
sys	0m22.053s
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: Digital signature
Url : http://lists.osuosl.org/pipermail/darcs-users/attachments/20081029/3e82b657/attachment.pgp 


More information about the darcs-users mailing list