summaryrefslogtreecommitdiff
path: root/testsuite/tests/deriving/perf
diff options
context:
space:
mode:
authorSimon Peyton Jones <simonpj@microsoft.com>2017-02-28 16:07:20 -0500
committerDavid Feuer <David.Feuer@gmail.com>2017-02-28 16:07:21 -0500
commit2effe18ab51d66474724d38b20e49cc1b8738f60 (patch)
tree8e69360fe2b24408778944f2450f3903e8236168 /testsuite/tests/deriving/perf
parent55efc9718b520ef354e32c15c4b49cdfecce412f (diff)
downloadhaskell-2effe18ab51d66474724d38b20e49cc1b8738f60.tar.gz
The Early Inline Patch
This very small patch switches on sm_inline even in the InitialPhase (aka "gentle" phase). There is no reason not to... and the results are astonishing. I think the peformance of GHC itself improves by about 5%; and some programs get much smaller, quicker. Result: across the board irmprovements in compile time performance. Here are the changes in perf/compiler; the numbers are decreases in compiler bytes-allocated: 3% T5837 7% parsing001 9% T12234 35% T9020 9% T3064 13% T9961 20% T13056 5% T9872d 5% T9872c 5% T9872b 7% T9872a 5% T783 35% T12227 20% T1969 Plus in perf/should_run 5% lazy-bs-alloc It wasn't as easy as it sounds: I did a raft of preparatory work in earlier patches. But it's great! Reviewers: austin, bgamari Subscribers: thomie Differential Revision: https://phabricator.haskell.org/D3203
Diffstat (limited to 'testsuite/tests/deriving/perf')
-rw-r--r--testsuite/tests/deriving/perf/all.T3
1 files changed, 2 insertions, 1 deletions
diff --git a/testsuite/tests/deriving/perf/all.T b/testsuite/tests/deriving/perf/all.T
index a13a6aa7b9..4d88bc9ca5 100644
--- a/testsuite/tests/deriving/perf/all.T
+++ b/testsuite/tests/deriving/perf/all.T
@@ -3,10 +3,11 @@ test('T10858',
[(platform('x86_64-unknown-mingw32'), 272402736, 8),
# 2017-02-19 272402736 (x64/Windows) - unknown
- (wordsize(64), 304094944, 8) ]),
+ (wordsize(64), 275357824, 8) ]),
# Initial: 476296112
# 2016-12-19 247768192 Join points (#19288)
# 2016-02-12 304094944 Type-indexed Typeable
+ # 2016-02-25 275357824 Early inline patch
only_ways(['normal'])],
compile,
['-O'])