On 12/09/13 20:28, Nicolas Frisby wrote:
On my laptop, a program showed a consistent slowdown with -fdicts-strict

I didn't find any obvious causes in the Core differences, so I turned to
Intel's Performance Counter Monitor for measurements. After trying a few
counters, I eventuall saw that there are about an order of magnitude
more misaligned memory loads with -fdicts-strict than without, so I
think that may be a significant part of the slowdown. I'm not sure if
these are code or data reads.

Can anyone suggest how to validate this hypothesis about misaligned reads?

Is this 32 bit or 64 bit? On 32 bits we might get misaligned loads of doubles from the heap and stack, but we shouldn't have that problem on 64-bit.

If you're on Linux you can use perf to track misaligned accesses and annotate the assembly to find the hotspots. Some info on the wiki here: http://ghc.haskell.org/trac/ghc/wiki/Debugging/LowLevelProfiling/Perf

Cheers,
        Simon


A subsequent commit has changed the behavior I was seeing, so I'm not
interested in alternatives means to determine if -fdicts-strict is
somehow at fault — I'm just asking specifically about data/code memory
alignment in GHC and how to diagnose/experiment with it.

Thanks.



_______________________________________________
ghc-devs mailing list
ghc-devs@haskell.org
http://www.haskell.org/mailman/listinfo/ghc-devs


_______________________________________________
ghc-devs mailing list
ghc-devs@haskell.org
http://www.haskell.org/mailman/listinfo/ghc-devs

Reply via email to