Hi,
Am Dienstag, den 28.10.2014, 22:02 + schrieb Simon Peyton Jones:
> So I'm all for keeping 'oneShot' in the definition of foldl or
> whatever, even if the analysis spots it. But with a Note please!
Three Notes actually! :-)
I created three mouth-sized commits, each of which can be review
| But since it is plausible that there are cases out there where it might
| help, even if just a little, we could go forward –unless the
| implementation becomes ugly.
Yes, I'm content with that, provided it is well documented. In general, I
think that when a programmer wants to be sure somethi
Simon Peyton Jones wrote:
>
> But since it is plausible that there are cases out there where it might
> help, even if just a little, we could go forward ?unless the
> implementation becomes ugly.
>
Based on our experience with Call Arity, it's much more likely that it will
help a lot in a few ca
Hi,
Am Dienstag, den 28.10.2014, 15:45 +0100 schrieb Joachim Breitner:
> Also your suggestion to investigate fft2 was good: Turns out iterateFB
> would never inline, which defeats the purpose. With that fixed (just
> pushed to master) I expect Call Arity to handle the case in fft2 as
> well; well
HI,
Am Dienstag, den 28.10.2014, 14:42 + schrieb Simon Peyton Jones:
> | > Serialising the one-shot lambda info sounds like a good plan to me.
> |
> | Ok, thanks for guidance. Is
> | https://ghc.haskell.org/trac/ghc/wiki/OneShot#PreservationofsetOneShotLam
> | bdaacrossmoduleboundaries
> | a
| > Serialising the one-shot lambda info sounds like a good plan to me.
|
| Ok, thanks for guidance. Is
| https://ghc.haskell.org/trac/ghc/wiki/OneShot#PreservationofsetOneShotLam
| bdaacrossmoduleboundaries
| a sensible design?
Generally yes, but I'd define a new data IfaceLamBndr, rather like
Hi,
Am Montag, den 27.10.2014, 22:36 + schrieb Simon Peyton Jones:
> | The biggest loser is calendar, which uses scanl. I am not fully sure
> | what went wrong here: Either the one-shot annotation on the lambda’s
> | variable got lost somewhere in the pipeline, or despite it being there,
> |
| The biggest loser is calendar, which uses scanl. I am not fully sure
| what went wrong here: Either the one-shot annotation on the lambda’s
| variable got lost somewhere in the pipeline, or despite it being there,
| the normal arity analysis did not use it.
|
| But there is also a winner, fft2,
Hi,
Am Montag, den 27.10.2014, 03:39 -0400 schrieb David Feuer:
> Joachim Breitner כתב
>
> That would be great! But do we have evidence of this
> user-written code
> that benefits? So far I have only seen relevant improvement
> due to
> list-fusion a left
Joachim Breitner כתב
That would be great! But do we have evidence of this user-written code
> that benefits? So far I have only seen relevant improvement due to
> list-fusion a left-foldish function.
>
I was under the impression that the transformation was much more general
than that, improving v
Hi,
Am Sonntag, den 26.10.2014, 10:56 -0400 schrieb David Feuer:
> > There is also the option of combining both. Then we do not get the
> > regression, but still the improvement for fft2:
>
> I *definitely* think we should leave Call Arity in place by default
> unless and until something strictl
> There is also the option of combining both. Then we do not get the
> regression, but still the improvement for fft2:
I *definitely* think we should leave Call Arity in place by default unless
and until something strictly better comes along. One very nice feature is
that it works for a lot of use
Thanks for the interesting analysis Joachim. I wouldn't trust nofib's
runtime numbers (but the allocation ones should be good). The tests don't
run long enough and the way we don't handle typical noise issues (e.g.
clock resolution, benchmark length, etc) well enough. I'd love to see some
numbers u
Hi,
some months ago I tried to make foldl a good consumer in the common
case. The starting point is always to write
foldl k a xs = foldr (\v f a -> f (v `k` a)) id xs a
and then somehow make GHC produce good code with this. I came up with
two solutions: A more sophisticated compiler ana
14 matches
Mail list logo