
I've just committed this patch sequence fb9ae288088a3eabc4e1bb4e86fa473a3881d2e2 Make FloatOut/SetLevels idemoptent on bottoming functions 995ab74b3c55fe3a0299bd94b49e948c942e76d6 Comments only 1163f4f2fe9aabd722c963497c67c5f8c71ef71b Tiny refactor 9b2c73ea8082199245bfa6a28390b70b38f87fd1 Make TH_Roles2 less fragile 9304df5230a7a29d3e992916d133e462b854e55f Fix CSE (again) on literal strings In my final validate run (after updating to HEAD) I saw Unexpected stat failures: perf/compiler/T13035.run T13035 [stat too good] (normal) -6.4% alloc perf/compiler/T12425.run T12425 [stat too good] (optasm) -6.6% alloc perf/compiler/T9675.run T9675 [stat too good] (optasm) -10.4% alloc perf/compiler/T1969.run T1969 [stat too good] (normal) -21% peak megabytes perf/space_leaks/T4029.run T4029 [stat too good] (ghci) -14% peak megabytes This is good. I did not see these in earlier validations (perhaps I did not rebuild the libraries sufficiently), so I have left them. If Harbormaster agrees that perf has improved, could someone re-centre the numbers? Ideally say which patch is responsible. Simon

Simon Peyton Jones via ghc-devs
I've just committed this patch sequence
fb9ae288088a3eabc4e1bb4e86fa473a3881d2e2 Make FloatOut/SetLevels idemoptent on bottoming functions
995ab74b3c55fe3a0299bd94b49e948c942e76d6 Comments only
1163f4f2fe9aabd722c963497c67c5f8c71ef71b Tiny refactor
9b2c73ea8082199245bfa6a28390b70b38f87fd1 Make TH_Roles2 less fragile
9304df5230a7a29d3e992916d133e462b854e55f Fix CSE (again) on literal strings In my final validate run (after updating to HEAD) I saw
Unexpected stat failures:
perf/space_leaks/T4029.run T4029 [stat too good] (ghci)
This one is rather interesting since I have also been seeing this for quite some time locally, but Harbormaster consistently disagrees. Moreover, it passes locally if my machine isn't under load. I haven't yet investigated why allocations are so inconsistent. Cheers, - Ben

Hi, perf.haskell.org has something to say about these: Am Montag, den 06.03.2017, 15:45 +0000 schrieb Simon Peyton Jones via ghc-devs:
I’ve just committed this patch sequence fb9ae288088a3eabc4e1bb4e86fa473a3881d2e2 Make FloatOut/SetLevels idemoptent on bottoming functions
increases lambda runtime by 3%. Maybe an environment-dependent performance cliff, given that you did not report this regression in your nofib listing.
995ab74b3c55fe3a0299bd94b49e948c942e76d6 Comments only
No change reported. Good :-)
1163f4f2fe9aabd722c963497c67c5f8c71ef71b Tiny refactor
No change reported.
9b2c73ea8082199245bfa6a28390b70b38f87fd1 Make TH_Roles2 less fragile
No change reported.
9304df5230a7a29d3e992916d133e462b854e55f Fix CSE (again) on literal strings
This is where most of the changes are: https://perf.haskell.org/ghc/#revision/9304df5230a7a29d3e992916d133e462b854e... There are some nice runtime improvements in cryptarithm1 (-12%), fasta, integer and scs (each -3%). But: binary-trees runtime increases by 5%. This was your daily performance weather report. Joachim -- Joachim “nomeata” Breitner mail@joachim-breitner.de • https://www.joachim-breitner.de/ XMPP: nomeata@joachim-breitner.de • OpenPGP-Key: 0xF0FBF51F Debian Developer: nomeata@debian.org

| But: binary-trees runtime increases by 5%. David: might you look to see if there is any obvious reason for this regression? We could just accept it, but it's always good to know why, and to document it. Thanks Simon | -----Original Message----- | From: ghc-devs [mailto:ghc-devs-bounces@haskell.org] On Behalf Of Joachim | Breitner | Sent: 07 March 2017 10:43 | To: ghc-devs@haskell.org | Subject: Re: Better perf | | Hi, | | perf.haskell.org has something to say about these: | | Am Montag, den 06.03.2017, 15:45 +0000 schrieb Simon Peyton Jones via | ghc-devs: | > I’ve just committed this patch sequence | > fb9ae288088a3eabc4e1bb4e86fa473a3881d2e2 Make FloatOut/SetLevels | > idemoptent on bottoming functions | | increases lambda runtime by 3%. Maybe an environment-dependent | performance cliff, given that you did not report this regression in your | nofib listing. | | > 995ab74b3c55fe3a0299bd94b49e948c942e76d6 Comments only | | No change reported. Good :-) | | > 1163f4f2fe9aabd722c963497c67c5f8c71ef71b Tiny refactor | | No change reported. | | > 9b2c73ea8082199245bfa6a28390b70b38f87fd1 Make TH_Roles2 less fragile | | No change reported. | | > 9304df5230a7a29d3e992916d133e462b854e55f Fix CSE (again) on literal | > strings | | This is where most of the changes are: | https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fperf.has | kell.org%2Fghc%2F%23revision%2F9304df5230a7a29d3e992916d133e462b854e55f&d | ata=02%7C01%7Csimonpj%40microsoft.com%7C68ad9d20aa794e70cdb708d46546c5ff% | 7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636244802039385263&sdata=pvj | YNwtA3NHHxF7z7bwagYX5Cjun8%2FIztPvXEO1AtdY%3D&reserved=0 | | There are some nice runtime improvements in cryptarithm1 (-12%), fasta, | integer and scs (each -3%). | | But: binary-trees runtime increases by 5%. | | | This was your daily performance weather report. | | Joachim | | -- | Joachim “nomeata” Breitner | mail@joachim-breitner.de • | https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.joac | him- | breitner.de%2F&data=02%7C01%7Csimonpj%40microsoft.com%7C68ad9d20aa794e70c | db708d46546c5ff%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636244802039 | 385263&sdata=hbp839x4Boa3J6gY4sOchfHGsLZeHiEsNatxsSv08iQ%3D&reserved=0 | XMPP: nomeata@joachim-breitner.de • OpenPGP-Key: 0xF0FBF51F | Debian Developer: nomeata@debian.org

Hi, Am Dienstag, den 07.03.2017, 22:55 +0000 schrieb Simon Peyton Jones via ghc-devs:
But: binary-trees runtime increases by 5%.
David: might you look to see if there is any obvious reason for this regression? We could just accept it, but it's always good to know why, and to document it.
Turns out that my commit Add rule mapFB c (λx.x) = c fixed that regression: https://perf.haskell.org/ghc/#revision/2fa44217c1d9722227297eefb0d6c6aed7e12... Maybe there is just a performance cliff there, and these jumps don’t really mean anything. Greetings, Joachim -- Joachim “nomeata” Breitner mail@joachim-breitner.de • https://www.joachim-breitner.de/ XMPP: nomeata@joachim-breitner.de • OpenPGP-Key: 0xF0FBF51F Debian Developer: nomeata@debian.org

Interesting! I keep nofib/Simon-nofib-notes for per-benchmark notes on perf. Would you like to add a note for 'binary-trees' pointing to these emails? So if someone later is looking for perf changes in binary-trees, they have some back-pointers to chase up. Thanks Simon | -----Original Message----- | From: ghc-devs [mailto:ghc-devs-bounces@haskell.org] On Behalf Of | Joachim Breitner | Sent: 09 March 2017 15:10 | To: ghc-devs@haskell.org | Subject: Re: Better perf | | Hi, | | Am Dienstag, den 07.03.2017, 22:55 +0000 schrieb Simon Peyton Jones | via | ghc-devs: | > > But: binary-trees runtime increases by 5%. | > | > David: might you look to see if there is any obvious reason for this | > regression? We could just accept it, but it's always good to know | > why, and to document it. | | Turns out that my commit | Add rule mapFB c (λx.x) = c | fixed that regression: | https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fperf. | haskell.org%2Fghc%2F%23revision%2F2fa44217c1d9722227297eefb0d6c6aed7e1 | 28ca&data=02%7C01%7Csimonpj%40microsoft.com%7C874797bc62de4b6aecf208d4 | 66fe7720%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C6362466904875493 | 08&sdata=ysGORaGgIlhCc88uQHB3v0sh5LNWhFY06iSgnTm6Pgo%3D&reserved=0 | | Maybe there is just a performance cliff there, and these jumps don’t | really mean anything. | | Greetings, | Joachim | | -- | Joachim “nomeata” Breitner | mail@joachim-breitner.de • | https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.j | oachim- | breitner.de%2F&data=02%7C01%7Csimonpj%40microsoft.com%7C874797bc62de4b | 6aecf208d466fe7720%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636246 | 690487549308&sdata=HxOTFdoh4hIqXVbPCgZOwMjob%2B572b1ymbAdBEXTF6A%3D&re | served=0 | XMPP: nomeata@joachim-breitner.de • OpenPGP-Key: 0xF0FBF51F | Debian Developer: nomeata@debian.org
participants (3)
-
Ben Gamari
-
Joachim Breitner
-
Simon Peyton Jones