-O/-O2 causes program to run too slow
David Spies
dnspies at gmail.com
Wed Dec 10 18:04:18 UTC 2014
Yes, it got faster when compiled with -fno-state-hack. It also got faster
when I added a second (useless) reference to cf (changing the definition of
doProbs to cf `seq` replicateM_ m doProb)
Also, when profiling, the number of entries into findChain decreased
significantly after adding -fno-state-hack
On Wed, Dec 10, 2014 at 10:49 AM, Simon Peyton Jones <simonpj at microsoft.com>
wrote:
> Just to check, when you say that “I found it was an instance of…” do you
> mean “I compiled with –fno-state-hack as the only change, and it got faster
> again”? Otherwise how would you know this was the cause?
>
>
>
> Simon
>
>
>
> *From:* ghc-devs [mailto:ghc-devs-bounces at haskell.org] *On Behalf Of *David
> Spies
> *Sent:* 07 December 2014 19:44
> *To:* ghc-devs at haskell.org
> *Subject:* Re: -O/-O2 causes program to run too slow
>
>
>
> Ok, so I found that it was an instance of this:
> https://ghc.haskell.org/trac/ghc/ticket/1168
>
> and I read through this whole thread:
> https://www.haskell.org/pipermail/glasgow-haskell-users/2008-February/014259.html
>
> I don't understand the state-hack optimization. It's clearly not safe and
> I'm not convinced that it actually is an optimization. In what
> circumstances does the state-hack identify a single-entry function that
> can't be identified as single-entry by some other (safe) method?
>
>
>
>
>
> On Sun, Dec 7, 2014 at 10:52 AM, David Spies <dnspies at gmail.com> wrote:
>
> I have a program I wrote to submit for the Car Game problem on Kattis:
> https://open.kattis.com/problems/cargame
>
> but it runs over the 5-second time-limit
>
>
>
> I downloaded the test data and found that on GHC 7.8.3, if I switch from
> -O2 to -O0, it runs three times faster (almost certainly fast enough for
> Kattis to accept). Can someone tell me what's going on? Is this a bug?
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.haskell.org/pipermail/ghc-devs/attachments/20141210/ed682f90/attachment.html>
More information about the ghc-devs
mailing list