1 / 23

An efficient algorithm for finding double-vertex dominators in circuit graphs

An efficient algorithm for finding double-vertex dominators in circuit graphs. Maxim Teslenko, Elena Dubrova DATE’05. Double-Vertex dominators. A. Outline. Introduction Preliminaries Dominator chain Experimental results Conclusion. Introduction.

Download Presentation

An efficient algorithm for finding double-vertex dominators in circuit graphs

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. An efficient algorithm for finding double-vertex dominators in circuit graphs Maxim Teslenko, Elena Dubrova DATE’05

  2. Double-Vertex dominators A

  3. Outline • Introduction • Preliminaries • Dominator chain • Experimental results • Conclusion

  4. Introduction • A vertex v is said to dominate another vertex u if every path from u to the outputs of the circuit contains v • Dominators provide a general mechanism for identifying re-converging paths in circuits • Single-vertex dominators are rare in circuits

  5. Introduction • Knowing re-convergent region is useful in a number of applications including • Computation of signal probabilities for test generation • Switching activities for power and noise analysis • Cut point selection in equivalence checking • Statistical timing analysis

  6. Introduction • Introduce a data structure, called dominator chain, which allows representing all possible double-vertex dominators of a given vertex • Present an efficient algorithm for finding double-vertex dominators

  7. Outline • Introduction • Preliminaries • Dominator chain • Experimental results • Conclusion

  8. Preliminaries • C=(V, E, root) : a single-output directed acyclic circuit graph • Vertex v is the immediate dominator of u, if v dominates u and every other dominator of u dominates v. idom(v)

  9. ∩ ∩ ∩ Multiple-vertex dominator • Definition 1: A set of vertices {v1,…,vk} is a common multiple-vertex dominator of size k for a set of vertices {u1,…,ul}V – {v1,…,vk}, if • Every path from any uj, j {1,…,l} to root contains some vi, i {1,…,k} • For every vi, there exists at least one path from some uj, j {1,…,l}, to root which contains vi and does not contain any other vj, i, j, {1,…,k}, i≠j ∩

  10. Example j e n f {j, n} is not a double-vertex dominator of e

  11. Immediate common k-vertex dominator • Definition 2: The set W={vi,…,vk} is an immediate common k-vertex dominator of {u1,…,ul}, if W is a common k-vertex dominator of {u1,…, ul} and there is no other common k-vertex dominator of {u1,…ul}, W’, such that each vertex of W’ is either dominated by W or belongs to W

  12. Example j e k b l h m b has two immediate 3-vertex dominator: {e, l, m} and {h, j, k}

  13. Outline • Introduction • Preliminaries • Dominator chain • Experimental results • Conclusion

  14. ∩ ∩ Dominator Chain • Definition 3: For any u V, the dominator chainD(u) is a vector of type 〈 {V11,V21},{V12,V22},…,{V1m,V2m}〉 whose element Vij, i {1,2}, j {1,…,m}, 0≤m<|V|/2, are vectors of vertices of V. Every pair {V1j,V2j} satisfies the following properties:

  15. Example a e h m k u f c d l n g b All double-vertex dominators for u is {a, b}, {a, c}, {a, d}, {e, c}, {e, d}, {h, c}, {h, d}, {h, g}, {k, l}, {m, l}, {k, n}, {m, n} 〈{V11,V21},{V12,V22}〉=〈{〈a, e, h〉,〈b, c, d, g〉} , {〈k, m〉,〈l, n〉}〉

  16. ∩ ∩ ∩ ∩ Dominator Chain • Property 1: For every vVij, there exists a matching vector W=〈w1,…,ws〉, which is a sub-vector (i.e. linear interval) of Vkj, k {1,2}, k≠i, such that • For all r {1,…,s}, {v, wr} is a double-vertex dominator of u; • No other pair of vertices {v, v’}, v’V-W, is a double-vertex dominator of u • The order of the elements of the matching vector W is given by: if {v, wr} is a double-vertex dominator of wt, then t< r, for all r, t {1,…,s}, r≠t

  17. Dominator Chain • Property 2: The immediate double-vertex dominator of u is the first element of V11 and V21. For all j {2,…,m}, the immediate common double-vertex dominator of the last elements of V1j-1 and V2j-1 is the first elements of V1j and V2j. There is no common double-vertex dominator of the last elements of V1m and V2m

  18. Dominator Chain • Property 3: No pair {V1j, V2j}, j {1,…,m}, can be partitioned into two pairs {V1j1,V2j1} and {V1j2,V2j2}, where V1j1∪ V1j2=V1j, V1j1∩ V1j2=Ø, V2j1∪ V2j2=V2j, V2j1∩ V2j2=Ø, which satisfy properties 1 and 2

  19. Dominator Chain • The dominator chain exists for any u V. It contains all possible double-vertex dominators of u Matching vector Double-vertex dominator Dominator Chain

  20. Outline • Introduction • Preliminaries • Dominator chain • Experimental results • Conclusion

  21. Experimental results • Compare the performance of the presented algorithm to the algorithm [11]

  22. Outline • Introduction • Preliminaries • Dominator chain • Experimental results • Conclusion

  23. Conclusion • Contributions • Dominator chain represents double-vertex dominators, which has a linear size and can be efficiently manipulated • Design and algorithm for finding double-vertex dominators • Future work • New application : statistical timing analysis

More Related