Re: [GHC] #8611: nofib’s cacheprof’s allocations nondeterminisitic

GHC ghc-devs at haskell.org
Tue Dec 18 16:25:16 UTC 2018


#8611: nofib’s cacheprof’s allocations nondeterminisitic
-------------------------------------+-------------------------------------
        Reporter:  nomeata           |                Owner:  (none)
            Type:  bug               |               Status:  new
        Priority:  normal            |            Milestone:
       Component:  NoFib benchmark   |              Version:  8.5
  suite                              |
      Resolution:                    |             Keywords:
Operating System:  Unknown/Multiple  |         Architecture:
                                     |  Unknown/Multiple
 Type of failure:  None/Unknown      |            Test Case:
      Blocked By:                    |             Blocking:
 Related Tickets:  #4450             |  Differential Rev(s):
       Wiki Page:                    |
-------------------------------------+-------------------------------------
Changes (by sgraf):

 * cc: simonmar (added)


Comment:

 Indeed, never making the call to `ThreadPaused.c:stackSqueeze()` gets rid
 of the non-determinism.
 So does `+RTS -V0` (which disables the master tick timer that triggers
 context switches, if understand correctly) as proposed in #4450 and `+RTS
 -Z` (which just deactivates stack squeezing completely).

 The latter seems like an easy fix for this particular benchmark, but this
 will probably come up again in the future. Maybe we can teach the RTS not
 do stack squeezing during context switches?

 CCing simonmar for input, as I'm not particularly familiar with RTS
 internals.

-- 
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/8611#comment:11>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler


More information about the ghc-tickets mailing list