diff options
author | Sergei Trofimovich <slyfox@gentoo.org> | 2016-09-01 17:34:58 +0100 |
---|---|---|
committer | Sergei Trofimovich <siarheit@google.com> | 2016-09-01 17:36:37 +0100 |
commit | a48de37dcca98e7d477040b0ed298bcd1b3ab303 (patch) | |
tree | a668a64334152ab6e62028fb0d4cf5aa81ebc33e /testsuite | |
parent | da920f691145175dc310055ae533757e638caab4 (diff) | |
download | haskell-a48de37dcca98e7d477040b0ed298bcd1b3ab303.tar.gz |
restore -fmax-worker-args handling (Trac #11565)
maxWorkerArgs handling was accidentally lost 3 years ago
in a major update of demand analysis
commit 0831a12ea2fc73c33652eeec1adc79fa19700578
Old regression is noticeable as:
- code bloat (requires stack reshuffling)
- compilation slowdown (more code to optimise/generate)
- and increased heap usage (DynFlags unboxing/reboxing?)
On a simple compile benchmark this change causes heap
allocation drop from 70G don to 67G (ghc perf build).
Signed-off-by: Sergei Trofimovich <siarheit@google.com>
Reviewers: simonpj, ezyang, goldfire, austin, bgamari
Reviewed By: simonpj, ezyang
Subscribers: thomie
Differential Revision: https://phabricator.haskell.org/D2503
GHC Trac Issues: #11565
Diffstat (limited to 'testsuite')
-rw-r--r-- | testsuite/tests/perf/compiler/all.T | 6 | ||||
-rw-r--r-- | testsuite/tests/perf/space_leaks/all.T | 6 |
2 files changed, 8 insertions, 4 deletions
diff --git a/testsuite/tests/perf/compiler/all.T b/testsuite/tests/perf/compiler/all.T index 3c8cbdabf9..130ba44691 100644 --- a/testsuite/tests/perf/compiler/all.T +++ b/testsuite/tests/perf/compiler/all.T @@ -428,8 +428,9 @@ test('T5631', test('parsing001', [compiler_stats_num_field('bytes allocated', [(wordsize(32), 274000576, 10), - (wordsize(64), 587079016, 5)]), + (wordsize(64), 581551384, 5)]), # expected value: 587079016 (amd64/Linux) + # 2016-09-01: 581551384 (amd64/Linux) Restore w/w limit (#11565) only_ways(['normal']), ], compile_fail, ['']) @@ -767,7 +768,7 @@ test('T9872d', test('T9961', [ only_ways(['normal']), compiler_stats_num_field('bytes allocated', - [(wordsize(64), 568526784, 5), + [(wordsize(64), 537297968, 5), # 2015-01-12 807117816 Initally created # 2015-spring 772510192 Got better # 2015-05-22 663978160 Fix for #10370 improves it more @@ -775,6 +776,7 @@ test('T9961', # 2015-12-17 745044392 x86_64/Darwin Creep upwards # 2016-03-20 519436672 x64_64/Linux Don't use build desugaring for large lists (#11707) # 2016-03-24 568526784 x64_64/Linux Add eqInt* variants (#11688) + # 2016-09-01 537297968 x64_64/Linux Restore w/w limit (#11565) (wordsize(32), 275264188, 5) # was 375647160 # 2016-04-06 275264188 x86/Linux diff --git a/testsuite/tests/perf/space_leaks/all.T b/testsuite/tests/perf/space_leaks/all.T index c6b1d925a6..301029cf58 100644 --- a/testsuite/tests/perf/space_leaks/all.T +++ b/testsuite/tests/perf/space_leaks/all.T @@ -58,17 +58,19 @@ test('T4018', test('T4029', [stats_num_field('peak_megabytes_allocated', - [(wordsize(64), 82, 10)]), + [(wordsize(64), 71, 10)]), # 2016-02-26: 66 (amd64/Linux) INITIAL # 2016-05-23: 82 (amd64/Linux) Use -G1 # 2016-07-13: 92 (amd64/Linux) Changes to tidyType + # 2016-09-01: 71 (amd64/Linux) Restore w/w limit (#11565) stats_num_field('max_bytes_used', - [(wordsize(64), 22920616, 5)]), + [(wordsize(64), 21648488, 5)]), # 2016-02-26: 24071720 (amd64/Linux) INITIAL # 2016-04-21: 25542832 (amd64/Linux) # 2016-05-23: 25247216 (amd64/Linux) Use -G1 # 2016-07-13: 27575416 (amd64/Linux) Changes to tidyType # 2016-07-20: 22920616 (amd64/Linux) Fix laziness of instance matching + # 2016-09-01: 21648488 (amd64/Linux) Restore w/w limit (#11565) extra_hc_opts('+RTS -G1 -RTS' ), ], ghci_script, |