darcs patch: Teach the inliner about primitive compar... (and 2more)

Simon Peyton-Jones simonpj at microsoft.com
Fri Oct 13 04:26:51 EDT 2006


Samuel

Thanks for the patches.  It's great that you've dug into it enough to
figure out how to improve matters.

However, I have learned the hard way that there are swings and
roundabouts -- an improvement to one program can make others worse.

Our mechanism for figuring this out is to 
	- check out the nofib suite (darcs.haskell.org/nofib)
	- run the suite before and after the patch (cd nofib; make
clean; make -k >& log)
	- run the nofib-analyse script to compare the two logs
The third step produces a table showing whether runtimes and allocations
went down or up.

Could you do this and let us know how it goes?   

Simon

| -----Original Message-----
| From: cvs-all-bounces at haskell.org [mailto:cvs-all-bounces at haskell.org]
On Behalf Of Samuel Bronson
| Sent: 12 October 2006 13:11
| To: cvs-ghc at haskell.org
| Subject: darcs patch: Teach the inliner about primitive compar... (and
2more)
| 
| Tue Oct 10 16:43:01 EDT 2006  Samuel Bronson <naesten at gmail.com>
|   * Teach the inliner about primitive comparisons against constants
| 
| Wed Oct 11 18:12:37 EDT 2006  Samuel Bronson <naesten at gmail.com>
|   * Merge imports
| 
| This is for Data.Bits.shift. Inliner needs more work to deal with
| Data.Bits.rotate (there are lets involved). And someone took out all
| the import lists, so I had to merge my patch with that.
| 
| Tue Oct 10 18:19:44 EDT 2006  Samuel Bronson <naesten at gmail.com>
|   * Don't squish "Inlined fn" into the right margin quite as much in
trace output
| 
| This is just a cosmetic change for the output of -ddump-inlinings. It
| has nothing to do with the other two, really.



More information about the Cvs-ghc mailing list