[GHC] #12964: Runtime regression to RTS change

#12964: Runtime regression to RTS change -------------------------------------+------------------------------------- Reporter: nomeata | Owner: Type: bug | Status: new Priority: highest | Milestone: 8.2.1 Component: Runtime | Version: 8.1 System | Keywords: | 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: -------------------------------------+------------------------------------- The commit to fix #12799, namely changeset:1732d7ac43ca, seems to have introduced a runtime regression. The hidden and integer nofib benchmarks regress by 5.5% resp. 2.5%: https://perf.haskell.org/ghc/#revision/1732d7ac43ca578deca39ea5a63cbf34f3cd9... I re-measured this commit and its parent once, and the numbers aid not change much. The `hidden` regression seems to be offset almost completely by the later changeset:6f7ed1e51bf360621a3c2a447045ab3012f68575 while the `integer` regression got “fixed” by the later changeset:1732d7ac43ca578deca39ea5a63cbf34f3cd9dd5. The perf builder is still new, so this might be bogus. But we should still check. Also, maybe random changes to the RTS cause random changes to the code layout which surface here. Or there is a real cause. Simon Marlow [https://phabricator.haskell.org/rGHC1732d7ac43ca#56419 suggested] to open a high priority ticket for this. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/12964 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#12964: Runtime regression to RTS change -------------------------------------+------------------------------------- Reporter: nomeata | Owner: Type: bug | Status: new Priority: highest | Milestone: 8.2.1 Component: Runtime System | Version: 8.1 Resolution: | Keywords: 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 simonmar): The fact that some of these tests seem to wobble around in response to unrelated changes suggests that it's something like an alignment or locality issue. These can be a pain to track down, especially when the difference is only 5%. The best plan of attack is to use perf to identify where the extra cycles are going (hopefully the extra 5% is localised in one place) and then go from there. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/12964#comment:1 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#12964: Runtime regression to RTS change -------------------------------------+------------------------------------- Reporter: nomeata | Owner: Type: bug | Status: new Priority: normal | Milestone: 8.2.1 Component: Runtime System | Version: 8.1 Resolution: | Keywords: 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: | -------------------------------------+------------------------------------- Changes (by nomeata): * priority: highest => normal Comment: Further measurements show that the wobbling of `hidden` correlates with changes to the RTS, but it also changed due to changeset:514c01eec5f2b23f278c29b61345dce6c37900f1. There seems to be a performance cliff of sorts, which is very annoying when trying to keep tabs on performance, but probably not a high priority blocker for the release, especially as it is likely not a simple bug introduced by any single commit. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/12964#comment:2 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#12964: Runtime regression to RTS change -------------------------------------+------------------------------------- Reporter: nomeata | Owner: (none) Type: bug | Status: new Priority: normal | Milestone: 8.2.1 Component: Runtime System | Version: 8.1 Resolution: | Keywords: 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: | -------------------------------------+------------------------------------- Changes (by maoe): * cc: maoe (added) -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/12964#comment:3 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#12964: Runtime regression to RTS change -------------------------------------+------------------------------------- Reporter: nomeata | Owner: (none) Type: bug | Status: closed Priority: normal | Milestone: Component: Runtime System | Version: 8.1 Resolution: invalid | Keywords: 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: | -------------------------------------+------------------------------------- Changes (by bgamari): * status: new => closed * resolution: => invalid * milestone: 8.6.1 => Comment: This doesn't really seem to be a bug but rather an unfortunate property of a particular test. Closing since there is nothing clearly actionable here, although do feel free to reopen if you disagree. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/12964#comment:6 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler
participants (1)
-
GHC