On Thu, 28 Aug 2014 11:16:03 +
Simon Peyton Jones simo...@microsoft.com wrote:
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 SizeAllocs 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 21
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
make -C testsuite/tests CLEANUP=1 OUTPUT_SUMMARY=../../testsuite_summary.txt
make[1]: Entering directory `/home/slyfox/dev/git/ghc-validate/testsuite/tests'
python2 ../driver/runtests.py -e ghc_compiler_always_flags='-fforce-recomp
-dcore-lint -dcmm-lint -dno-debug-output -no-user-package-db -rtsopts ' -e
ghc_debugged=False -e ghc_with_native_codegen=1 -e ghc_with_vanilla=1 -e
ghc_with_dynamic=1 -e ghc_with_profiling=1 -e ghc_with_threaded_rts=1 -e
ghc_with_dynamic_rts=1 -e ghc_with_interpreter=1 -e ghc_unregisterised=0 -e
ghc_dynamic_by_default=False -e ghc_dynamic=True -e ghc_with_smp=1 -e
ghc_with_llvm=1 -e windows=False -e darwin=False -e in_tree_compiler=True
--threads=12 -e clean_only=False --rootdir=. --config=../config/ghc -e
'config.confdir=../config' -e
'config.compiler=/home/slyfox/dev/git/ghc-validate/inplace/bin/ghc-stage2' -e
'config.ghc_pkg=/home/slyfox/dev/git/ghc-validate/inplace/bin/ghc-pkg' -e
'config.hp2ps=/home/slyfox/dev/git/ghc-validate/inplace/bin/hp2ps' -e
'config.hpc=/home/slyfox/dev/git/ghc-validate/inplace/bin/hpc' -e
'config.gs=gs' -e 'config.platform=x86_64-unknown-linux' -e
'config.os=linux' -e 'config.arch=x86_64' -e 'config.wordsize=64' -e
'default_testopts.cleanup=1' -e 'config.timeout=int() or config.timeout' -e
'config.timeout_prog=../timeout/install-inplace/bin/timeout' -e
'config.exeext=' -e
'config.top=/home/slyfox/dev/git/ghc-validate/testsuite' --output-summary
../../testsuite_summary.txt --rootdir=../../libraries/array/tests
--rootdir=../../libraries/base/tests --rootdir=../../libraries/binary/tests
--rootdir=../../libraries/bytestring/tests
--rootdir=../../libraries/containers/tests
--rootdir=../../libraries/directory/tests
--rootdir=../../libraries/filepath/tests
--rootdir=../../libraries/ghc-prim/tests
--rootdir=../../libraries/haskeline/tests --rootdir=../../libraries/hpc/tests
--rootdir=../../libraries/old-time/tests
--rootdir=../../libraries/parallel/tests
--rootdir=../../libraries/pretty/tests --rootdir=../../libraries/process/tests
--rootdir=../../libraries/stm/tests
--rootdir=../../libraries/template-haskell/tests
--rootdir=../../libraries/unix/tests
--rootdir=../../libraries/containers/tests-ghc \
--only=T7891 \
\
--way=optasm \
\
\
\
Error: /undefined in This
Operand stack:
Execution stack:
%interp_exit .runexec2 --nostringval-- --nostringval--
--nostringval-- 2 %stopped_push --nostringval-- --nostringval--
--nostringval-- false 1 %stopped_push 1900 1 3 %oparray_pop
1899 1 3 %oparray_pop 1883 1 3 %oparray_pop 1771 1 3
%oparray_pop --nostringval-- %errorexec_pop .runexec2 --nostringval--
--nostringval-- --nostringval-- 2 %stopped_push --nostringval--
Dictionary stack:
--dict:1172/1684(ro)(G)-- --dict:0/20(G)-- --dict:77/200(L)--
Current allocation mode is local
Current file position is 5
gs -dNODISPLAY -dBATCH -dQUIET -dNOPAUSE ../config/good.ps
gs -dNODISPLAY -dBATCH -dQUIET -dNOPAUSE ../config/bad.ps
GhostScript available for hp2ps tests
Timeout is 300
Found 269 .T files...
Beginning test run at Sat Aug 30 13:36:37 2014 FET
Scanning ./annotations/should_compile/all.T
Scanning