
On Thu, 28 Aug 2014 11:16:03 +0000
Simon Peyton Jones
I've just pushed a bunch of Core-to-Core optimisation changes that have been sitting in my tree for ages. The aggregate effect on nofib is very modest, but they are mostly aimed at corner cases, and consolidation.
Program Size Allocs Runtime Elapsed TotalMem
Min -7.2% -3.1% -7.8% -7.8% -14.8%
Max +5.6% +1.3% +20.0% +19.7% +50.0%
Geometric Mean -0.3% -0.1% +1.7% +1.7% +0.2% The runtime increases are spurious - I checked. A couple of perf/compiler tests (i.e. GHC's own performance) improve significantly, which is a good sign. I have a few more to come but wanted to get this lot out of my hair.
Hello Simon! The compiler improvements look great! Although running 'fulltest' one test caught core lint error:
typecheck/should_compile T7891 [exit code non-0] (hpc,optasm,profasm,optllvm)
It can be reran as: $ make fulltest THREADS=12 TEST=T7891 The result of optasm run: =====> T7891(optasm) 3365 of 4096 [0, 0, 0] cd ./typecheck/should_compile && '/home/slyfox/dev/git/ghc-validate/inplace/bin/ghc-stage2' -fforce-recomp -dcore-lint -dcmm-lint -dno-debug-output -no-user-package-db -rtsopts -fno-ghci-history -c T7891.hs -O -fasm -fno-warn-incomplete-patterns >T7891.comp.stderr 2>&1 Compile failed (status 256) errors were: *** Core Lint errors : in result of Simplifier *** <no location info>: Warning: In the type ‘a_12 -> t_aiE -> t_aiE’ @ a_12 is out of scope (attached it's complete output) Thank you! -- Sergei