performance regressions

Joachim Breitner mail at joachim-breitner.de
Tue Dec 16 15:41:58 UTC 2014


Hi,


Am Dienstag, den 16.12.2014, 09:59 -0500 schrieb Richard Eisenberg:
> On Dec 16, 2014, at 4:01 AM, Joachim Breitner <mail at joachim-breitner.de> wrote:
> 
> > another guess (without looking at the code, sorry): Are they in the same
> > module? I.e., can GHC specialize the code to your particular Monad?

> No, they're not in the same module. I could also try moving the
> zipWithAndUnzipM function to the same module, and even specializing it
> by hand to the right monad.

I did mean zipWithAndUnzipM, so maybe yes: Try that.

(I find it hard to believe that any polymorphic monadic code should
perform well, with those many calls to an unknown (>>=) with a function
parameter, but maybe I’m too pessimistic here.)


>  Could that be preventing the fusing?

There is not going to be any fusing here, at least not list fusion; that
would require your code to be written in terms of functions with fusion
rules.

Greetings,
Joachim

-- 
Joachim “nomeata” Breitner
  mail at joachim-breitner.dehttp://www.joachim-breitner.de/
  Jabber: nomeata at joachim-breitner.de  • GPG-Key: 0xF0FBF51F
  Debian Developer: nomeata at debian.org

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: This is a digitally signed message part
URL: <http://www.haskell.org/pipermail/ghc-devs/attachments/20141216/dbbda1b7/attachment.sig>


More information about the ghc-devs mailing list