Professional Documents
Culture Documents
● Async-Finish Parallelism
● Work Stealing Schedulers
● Tracing and Performance Analysis
● Continuation Steps and Continuations
● All tasks assigned levels, initial task at lvl 0
Background
● Tracing:
○ Tracing captures order of events of interest
○ Used to study runtime behaviour.
● Continuation Step:
○ Sequence of instructions with no interleaving parallelism
constructs (async/finish)
● Partial Continuation:
○ Continuation representing proper subset of computation
○ (represented by a task)
Problem Statement
Problem Statement
● Want to completely track execution, but different stealing structures
for help-first and work-first schedulers.
● New ‘thread’ class containing it’s own pthread to carry out actual parallelism, and added fields within
new thread class to accomodate for WorkerStateHdr, etc.
● Task structs modified to have their own ContuationHdrs etc to keep track of levels.
● Functions such as cotton::startTrace(), cotton::endTrace()
● (If time permits) data race detection implementation (pseudocode given in sec 8.1 of paper)