Sangam: A Confluence of Knowledge Streams

A General Work for the Flow Analysis of Concurrent Programs

Show simple item record

dc.contributor Computer Science
dc.creator Lam, Patrick
dc.date 2016-06-27T19:03:46Z
dc.date 2016-06-27T19:03:46Z
dc.date 2000-08
dc.date.accessioned 2023-03-03T18:51:45Z
dc.date.available 2023-03-03T18:51:45Z
dc.identifier eprint:294
dc.identifier http://hdl.handle.net/10919/71569
dc.identifier.uri http://localhost:8080/xmlui/handle/CUHPOERS/282047
dc.description Standard techniques for analysing sequential programs are severely constrained when applied to a concurrent program because they cannot take full advantage of the concurrent structure of the program. In this work, we overcome this limitation using a novel approach which ``lifts'' a sequential dataflow analysis to a concurrent analysis. First, we introduce concurrency primitives which abstract away from the details of how concurrency features are implemented in real programming languages. Using these primitives, we describe how sequential analyses can be made applicable to concurrent programs. Under some circumstances, there is no penalty for concurrency: our method produces results which are as precise as the sequential analysis. Our lifting is straightforward, and we illustrate it on some standard analyses -- available expressions, live variables and generalized constant propagation. Finally, we describe how concurrency features of real languages can be expressed using our abstract concurrency primitives, and present analyses for finding our concurrency primitives in real programs.
dc.format application/postscript
dc.format application/postscript
dc.language en
dc.publisher McGill University
dc.rights In Copyright
dc.rights http://rightsstatements.org/vocab/InC/1.0/
dc.subject program analysis
dc.subject data flow analysis
dc.subject concurrency
dc.subject QA75
dc.title A General Work for the Flow Analysis of Concurrent Programs
dc.type Thesis


Files in this item

Files Size Format View
294_1.ps 872.7Kb application/postscript View/Open

This item appears in the following Collection(s)

Show simple item record

Search DSpace


Advanced Search

Browse