Abstract
Predicting the resources that are consumed by a program component is crucial for many parallel or distributed systems. In this context, the main resources of interest are execution time, space and communication/synchronisation costs. There has recently been significant progress in resource analysis technology, notably in type-based analyses and abstract interpretation. At the same time, parallel and distributed computing are becoming increasingly important. This paper synthesises progress in both areas to survey the state-of-the-art in resource analysis for parallel and distributed computing. We articulate a general model of resource analysis and describe parallel/distributed resource analysis together with the relationship to sequential analysis. We use three parallel or distributed resource analyses as examples and provide a critical evaluation of the analyses. We investigate why the chosen analysis is effective for each application and identify general principles governing why the resource analysis is effective. Copyright (c) 2011 John Wiley & Sons, Ltd.
Original language | English |
---|---|
Pages (from-to) | 309-348 |
Number of pages | 40 |
Journal | Concurrency and Computation: Practice and Experience |
Volume | 25 |
Issue number | 3 |
DOIs | |
Publication status | Published - 10 Mar 2013 |
Keywords
- resource analysis
- cost models
- parallelism
- distributed systems
- PERFORMANCE PREDICTION
- FUNCTIONAL PROGRAMS
- ALGORITHMS
- COMPLEXITY
- EXECUTION
- INFERENCE
- MEMORY
- BOUNDS
- MODEL