Parallelism for free
- 1 May 1996
- journal article
- Published by Association for Computing Machinery (ACM) in ACM Transactions on Programming Languages and Systems
- Vol. 18 (3) , 268-299
- https://doi.org/10.1145/229542.229545
Abstract
We consider parallel programs with shared memory and interleaving semantics, for which we show how to construct for unidirectional bitvector problems optimal analysis algorithms that are as efficient as their purely sequential counterparts and that can easily be implemented. Whereas the complexity result is rather obvious, our optimality result is a consequence of a new Kam/Ullman-style Coincidence Theorem. Thus using our method, the standard algorithms for sequential programs computing liveness, availability, very busyness, reaching definitions, definition-use chains, or the analyses for performing code motion, assignment motion, partial dead-code elimination or strength reduction, can straightforward be transferred to the parallel setting at almost no cost.Keywords
This publication has 13 references indexed in Scilit:
- Parallelism for free: Bitvector analyses ⇒ no state explosion!Published by Springer Nature ,1995
- Optimal code motionACM Transactions on Programming Languages and Systems, 1994
- Efficient computation of precedence information in parallel programsPublished by Springer Nature ,1994
- A variation of Knoop, Rüthing, and Steffen's Lazy Code MotionACM SIGPLAN Notices, 1993
- Frameworks for abstract interpretationActa Informatica, 1993
- The interprocedural coincidence theoremPublished by Springer Nature ,1992
- Using partial orders for the efficient verification of deadlock freedom and safety propertiesPublished by Springer Nature ,1992
- A new algorithm for composite hoisting and strength reduction optimisationInternational Journal of Computer Mathematics, 1989
- A composite hoisting-strength reduction transformation for global program optimization part iiInternational Journal of Computer Mathematics, 1982
- A composite hoisting-strength reduction transformation for global program optimization part IInternational Journal of Computer Mathematics, 1982