Re: [GHC] #4960: Better inlining test in CoreUnfold

#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/e29f88b5d952f2f40f68e2bb49f051b6684d... 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
participants (1)
-
GHC