Inliner behaviour - tiny changes lead to huge performance differences

Simon Peyton-Jones simonpj at
Fri Nov 13 03:26:37 EST 2009


| I'm working on measuring and improving the performance of the text library at the 
| moment, and the very first test I tried demonstrated a piece of behaviour 
| that I'm not completely able to understand. Actually, I'm not able to 
| understand what's going on at all, beyond a very shallow level. 
| All the comments below pertain to GHC 6.10.4.

My goal is for INLINE pragmas to be very predictable.  I can't decode your message enough to offer any insights; thank you Roman, who is closer to it, for helping.

As Roman says, I committed a patch two days ago which constitutes a fairly radical overhaul of the way inlining works, strongly motivated by wanting predictability.  So can you try the HEAD?

If that doesn't work, let's make it concrete. You identify several cases where something unexpected happened.  Can you submit a Trac ticket with instructions for reproducing this unexpected behaviour?  Just to make it self contained, maybe include any non-standard libraries as an attachment?


More information about the Glasgow-haskell-users mailing list