diff options
author | Simon Peyton Jones <simonpj@microsoft.com> | 2017-02-28 16:07:20 -0500 |
---|---|---|
committer | David Feuer <David.Feuer@gmail.com> | 2017-02-28 16:07:21 -0500 |
commit | 2effe18ab51d66474724d38b20e49cc1b8738f60 (patch) | |
tree | 8e69360fe2b24408778944f2450f3903e8236168 /testsuite/tests/deriving | |
parent | 55efc9718b520ef354e32c15c4b49cdfecce412f (diff) | |
download | haskell-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')
-rw-r--r-- | testsuite/tests/deriving/perf/all.T | 3 |
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']) |