On 22/11/2011 07:36, David Terei wrote:
Argh! I spent the weekend fixing LLVM bugs and managed to close all
but one! I was so close to freedom.
Yep can confirm. -fasm -O0 takes 30seconds on my machine, -fllvm -O0
takes 2 min. 1 min spent in code generator (so either bad performance
in llvm code generator or in the llvm mangler) and 1 min in the llvm
tools (mostly llc) so probably nothing we can do there. Haven't tried
-O1 yet for -fllvm but -O1 -fasm takes 8min on my machine.
Can you recheck that? -O -fasm takes 8 *seconds* here:
'/64playpen/simonmar/nightly/HEAD-cam-04-unx/x86_64-unknown-linux/inplace/bin/ghc-stage2'
-fforce-recomp -dcore-lint -dcmm-lint -dno-debug-output
-no-user-package-conf -rtsopts -fno-ghci-history -c T3016.hs -O -fasm
+RTS -s
3,104,745,616 bytes allocated in the heap
829,479,400 bytes copied during GC
79,029,208 bytes maximum residency (20 sample(s))
842,880 bytes maximum slop
218 MB total memory in use (0 MB lost due to fragmentation)
Tot time (elapsed) Avg pause Max
pause
Gen 0 5969 colls, 0 par 1.51s 1.51s 0.0003s
0.0097s
Gen 1 20 colls, 0 par 1.86s 1.86s 0.0932s
0.4177s
Parallel GC work balance: -nan (0 / 0, ideal 1)
MUT time (elapsed) GC time (elapsed)
Task 0 (worker) : 0.00s ( 7.96s) 0.00s ( 0.00s)
Task 1 (worker) : 0.00s ( 7.99s) 0.00s ( 0.00s)
Task 2 (bound) : 3.82s ( 4.61s) 3.37s ( 3.38s)
SPARKS: 0 (0 converted, 0 overflowed, 0 dud, 0 GC'd, 0 fizzled)
INIT time 0.00s ( 0.00s elapsed)
MUT time 3.82s ( 4.61s elapsed)
GC time 3.37s ( 3.38s elapsed)
EXIT time 0.00s ( 0.00s elapsed)
Total time 7.20s ( 7.99s elapsed)
Cheers,
Simon
Created ticket to track: http://hackage.haskell.org/trac/ghc/ticket/5652
Cheers,
David
On 21 November 2011 07:02, Simon Marlow<[email protected]> wrote:
David,
It looks like T3016 is running out of time with -fllvm:
=====> T3016(optllvm) 763 of 3159 [0, 1, 0]
cd ./simplCore/should_compile&&
'/64playpen/simonmar/nightly/HEAD-cam-04-unx/x86_64-unknown-linux/inplace/bin/ghc-stage2'
-fforce-recomp -dcore-lint -dcmm-lint -dno-debug-output
-no-user-package-conf -rtsopts -fno-ghci-history -c T3016.hs -O -fllvm
T3016.comp.stderr 2>&1
Timeout happened...killing process...
Compile failed (status 25344) errors were:
*** unexpected failure for T3016(optllvm)
Maybe it's hitting a bad case in the LLVM generator? This module is just
full of large integer constants, which ends up as a lot of top-level static
data.
Cheers,
Simon
_______________________________________________
Cvs-ghc mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/cvs-ghc