patch applied (ghc): FIX #1623: disable the timer signal when the system is idle (threaded RTS only)

Simon Marlow simonmar at microsoft.com
Mon Sep 3 10:17:49 EDT 2007


Mon Sep  3 06:25:23 PDT 2007  Simon Marlow <simonmar at microsoft.com>
  * FIX #1623: disable the timer signal when the system is idle (threaded RTS only)
  Having a timer signal go off regularly is bad for power consumption,
  and generally bad practice anyway (it means the app cannot be
  completely swapped out, for example).  Fortunately the threaded RTS
  already had a way to detect when the system was idle, so that it can
  trigger a GC and thereby find deadlocks.  After performing the GC, we
  now turn off timer signals, and re-enable them again just before
  running any Haskell code.

    M ./rts/RtsStartup.c +2
    M ./rts/Schedule.c -1 +17
    M ./rts/Ticker.h -3 +7
    M ./rts/Timer.c -15 +37
    M ./rts/Timer.h -3 +3
    M ./rts/posix/Itimer.c -7 +23
    M ./rts/win32/Ticker.c -28 +57



More information about the Cvs-ghc mailing list