[GHC] #4960: Better inlining test in CoreUnfold
GHC
ghc-devs at haskell.org
Tue Jan 24 11:14:29 UTC 2017
#4960: Better inlining test in CoreUnfold
-------------------------------------+-------------------------------------
Reporter: simonpj | Owner:
Type: task | Status: new
Priority: low | Milestone:
Component: Compiler | Version: 7.0.1
Resolution: | Keywords: newcomer,
| Inlining
Operating System: Unknown/Multiple | Architecture:
Type of failure: Runtime | Unknown/Multiple
performance bug | Test Case:
Blocked By: | Blocking:
Related Tickets: | Differential Rev(s):
Wiki Page: |
-------------------------------------+-------------------------------------
Comment (by alexbiehl):
I have refined the above patch in
https://github.com/alexbiehl/ghc/commit/e29f88b5d952f2f40f68e2bb49f051b6684d2686
and ran `./validate --testsuite-only --fast` on it
It result in longer compile time (about 27-35%) for `T1969` and `T3294` I
have no clue why. But both `haddock.base' and `haddock.Cabal` show ~30%
less allocations and `T9203' even 57%. I think this is nice. I hope I am
on the right track here.
{{{
Unexpected stat failures:
/var/folders/7n/mkhl20_55n95s7ytnm9b11lw0000gp/T/ghctest-jl0wiuid/test
spaces/./perf/compiler/T1969.run T1969 [stat not good enough]
(normal)
/var/folders/7n/mkhl20_55n95s7ytnm9b11lw0000gp/T/ghctest-jl0wiuid/test
spaces/./perf/compiler/T5631.run T5631 [stat too good] (normal)
/var/folders/7n/mkhl20_55n95s7ytnm9b11lw0000gp/T/ghctest-jl0wiuid/test
spaces/./perf/compiler/T3294.run T3294 [stat not good enough]
(normal)
/var/folders/7n/mkhl20_55n95s7ytnm9b11lw0000gp/T/ghctest-jl0wiuid/test
spaces/./perf/haddock/haddock.base.run haddock.base [stat too good]
(normal)
/var/folders/7n/mkhl20_55n95s7ytnm9b11lw0000gp/T/ghctest-jl0wiuid/test
spaces/./perf/haddock/haddock.Cabal.run haddock.Cabal [stat too good]
(normal)
/var/folders/7n/mkhl20_55n95s7ytnm9b11lw0000gp/T/ghctest-jl0wiuid/test
spaces/./perf/should_run/T5205.run T5205 [stat too good] (normal)
/var/folders/7n/mkhl20_55n95s7ytnm9b11lw0000gp/T/ghctest-jl0wiuid/test
spaces/./perf/should_run/T9203.run T9203 [stat too good] (normal)
peak_megabytes_allocated value is too high:
Expected T1969(normal) peak_megabytes_allocated: 68 +/-20%
Lower bound T1969(normal) peak_megabytes_allocated: 54
Upper bound T1969(normal) peak_megabytes_allocated: 82
Actual T1969(normal) peak_megabytes_allocated: 87
Deviation T1969(normal) peak_megabytes_allocated: 27.9 %
max_bytes_used value is too high:
Expected T1969(normal) max_bytes_used: 17285216 +/-15%
Lower bound T1969(normal) max_bytes_used: 14692433
Upper bound T1969(normal) max_bytes_used: 19877999
Actual T1969(normal) max_bytes_used: 23225104
Deviation T1969(normal) max_bytes_used: 34.4 %
*** unexpected stat test failure for T1969(normal)
max_bytes_used value is too high:
Expected T3294(normal) max_bytes_used: 52992688 +/-20%
Lower bound T3294(normal) max_bytes_used: 42394150
Upper bound T3294(normal) max_bytes_used: 63591226
Actual T3294(normal) max_bytes_used: 64107552
Deviation T3294(normal) max_bytes_used: 21.0 %
*** unexpected stat test failure for T3294(normal)
bytes allocated value is too low:
(If this is because you have improved GHC, please
update the test so that GHC doesn't regress again)
Expected T5631(normal) bytes allocated: 1077429456 +/-5%
Lower bound T5631(normal) bytes allocated: 1023557983
Upper bound T5631(normal) bytes allocated: 1131300929
Actual T5631(normal) bytes allocated: 1006121416
Deviation T5631(normal) bytes allocated: -6.6 %
*** unexpected stat test failure for T5631(normal)
bytes allocated value is too low:
(If this is because you have improved GHC, please
update the test so that GHC doesn't regress again)
Expected haddock.base(normal) bytes allocated: 32855223200 +/-5%
Lower bound haddock.base(normal) bytes allocated: 31212462040
Upper bound haddock.base(normal) bytes allocated: 34497984360
Actual haddock.base(normal) bytes allocated: 22651400376
Deviation haddock.base(normal) bytes allocated: -31.1 %
*** unexpected stat test failure for haddock.base(normal)
bytes allocated value is too low:
(If this is because you have improved GHC, please
update the test so that GHC doesn't regress again)
Expected haddock.Cabal(normal) bytes allocated: 25478853176
+/-5%
Lower bound haddock.Cabal(normal) bytes allocated: 24204910517
Upper bound haddock.Cabal(normal) bytes allocated: 26752795835
Actual haddock.Cabal(normal) bytes allocated: 17772058640
Deviation haddock.Cabal(normal) bytes allocated: -30.2
%
bytes allocated value is too low:
(If this is because you have improved GHC, please
update the test so that GHC doesn't regress again)
Expected T5205(normal) bytes allocated: 56208 +/-5%
Lower bound T5205(normal) bytes allocated: 53397
Upper bound T5205(normal) bytes allocated: 59019
Actual T5205(normal) bytes allocated: 53360
Deviation T5205(normal) bytes allocated: -5.1 %
*** unexpected stat test failure for T5205(normal)
bytes allocated value is too low:
(If this is because you have improved GHC, please
update the test so that GHC doesn't regress again)
Expected T9203(normal) bytes allocated: 95451192 +/-5%
Lower bound T9203(normal) bytes allocated: 90678632
Upper bound T9203(normal) bytes allocated: 100223752
Actual T9203(normal) bytes allocated: 40617752
Deviation T9203(normal) bytes allocated: -57.4 %
*** unexpected stat test failure for T9203(normal)
}}}
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/4960#comment:14>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list