260 likes | 274 Views
This paper explores the complexities and optimizations of slicing concurrent programs, with a focus on nested threads and interference dependence. It also discusses the limitations of previous solutions.
E N D
Slicing Concurrent Programs S. Ramesh Mangala Gowri Nanda Indian Institute of Technology, Bombay
Organization • Previous work • Nested threads • Threads nested within loops • Complexity and Optimizations
Static Slicing • The Slice of a program with respect to a program point p and a variable x consists of all statements and predicates of the program that might affect the value of x at point p.
Interference dependence : A node S1 is interference dependent on a node S2 if S2 defines a variable v, S1 uses the variable v and S1 and S2 execute in parallel.
Limitations of previous solutions: 1. Nested threads 2. Threads nested within loops
CoAncestor ( i, j ) is defined to be the nearest common ancestor of two parallel executing nodes i and j. CoRegion ( i, j ) is the region enclosed between CoAncestor ( i, j ) and its corresponding coend node.