summaryrefslogtreecommitdiff
path: root/rts/RtsProbes.d
diff options
context:
space:
mode:
authorDuncan Coutts <duncan@well-typed.com>2011-07-14 19:06:45 +0100
committerDuncan Coutts <duncan@well-typed.com>2011-07-18 16:31:18 +0100
commit084b64f22717b203b8d8c2ab7c057fb747e39593 (patch)
treec44a67dcb28b288ac1ad445a83f68b75f1352c92 /rts/RtsProbes.d
parent46b70749971341678c3e4d5cdb2b1ab1a13d039e (diff)
downloadhaskell-084b64f22717b203b8d8c2ab7c057fb747e39593.tar.gz
Add new fully-accurate per-spark trace/eventlog events
Replaces the existing EVENT_RUN/STEAL_SPARK events with 7 new events covering all stages of the spark lifcycle: create, dud, overflow, run, steal, fizzle, gc The sampled spark events are still available. There are now two event classes for sparks, the sampled and the fully accurate. They can be enabled/disabled independently. By default +RTS -l includes the sampled but not full detail spark events. Use +RTS -lf-p to enable the detailed 'f' and disable the sampled 'p' spark. Includes work by Mikolaj <mikolaj.konarski@gmail.com>
Diffstat (limited to 'rts/RtsProbes.d')
-rw-r--r--rts/RtsProbes.d10
1 files changed, 8 insertions, 2 deletions
diff --git a/rts/RtsProbes.d b/rts/RtsProbes.d
index cd3c0f73e6..755b25525b 100644
--- a/rts/RtsProbes.d
+++ b/rts/RtsProbes.d
@@ -43,8 +43,6 @@ provider HaskellEvent {
probe stop__thread (EventCapNo, EventThreadID, EventThreadStatus, EventThreadID);
probe thread__runnable (EventCapNo, EventThreadID);
probe migrate__thread (EventCapNo, EventThreadID, EventCapNo);
- probe run__spark (EventCapNo, EventThreadID);
- probe steal__spark (EventCapNo, EventThreadID, EventCapNo);
probe shutdown (EventCapNo);
probe thread_wakeup (EventCapNo, EventThreadID, EventCapNo);
probe gc__start (EventCapNo);
@@ -71,4 +69,12 @@ provider HaskellEvent {
StgWord, StgWord, StgWord
StgWord, StgWord, StgWord
StgWord);
+
+ probe spark__create (EventCapNo);
+ probe spark__dud (EventCapNo);
+ probe spark__overflow (EventCapNo);
+ probe spark__run (EventCapNo);
+ probe spark__steal (EventCapNo, EventCapNo);
+ probe spark__fizzle (EventCapNo);
+ probe spark__gc (EventCapNo);
};