Proceedings of the 17th International Symposium on Principles and Practice of Declarative Programming 2015
DOI: 10.1145/2790449.2790524
|View full text |Cite
|
Sign up to set email alerts
|

Static analysis of cloud elasticity

Abstract: We propose a static analysis technique that computes upper bounds of virtual machine usages in a concurrent language with explicit acquire and release operations of virtual machines. In our language it is possible to delegate other (ad-hoc or third party) concurrent code to release virtual machines (by passing them as arguments of invocations). Our technique is modular and consists of (i) a type system associating programs with behavioural types that records relevant information for resource usage (creations, … Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1

Citation Types

0
3
0

Year Published

2016
2016
2021
2021

Publication Types

Select...
5
3

Relationship

2
6

Authors

Journals

citations
Cited by 10 publications
(3 citation statements)
references
References 24 publications
0
3
0
Order By: Relevance
“…• a first phase whose goal is the generation of the cost relations from the program to be analyzed (see [4], [18]); • and a second phase that aims at computing a closedform upper-bound from the cost relations [1], [16].…”
Section: B Resource Analysismentioning
confidence: 99%
“…• a first phase whose goal is the generation of the cost relations from the program to be analyzed (see [4], [18]); • and a second phase that aims at computing a closedform upper-bound from the cost relations [1], [16].…”
Section: B Resource Analysismentioning
confidence: 99%
“…W.l.o.g., we use the cost model adopted in the Complexity and Termination competition http://termination-portal.org/wiki/ Termination_Competition_2019 (abbreviated as TermComp) which simply estimates the asymptotic complexity order (e.g., by accumulating constant values in cost functions). This classical resource analysis approach has been applied to a wide variety of declarative and imperative programming languages: earlier work applied it to functional (Wegbreit 1975) and logic languages (Debray and Lin 1993;Debray et al 1994), later work to imperative languages such as Java and Java bytecode (Albert et al 2007), concurrent programs (Garcia et al 2015;Albert et al 2018), LLVM (Grech et al 2015;Liqat et al 2015), among others. In most cases, the program written in any imperative/declarative, source/bytecode language is first transformed into a simpler intermediate representation (IR) that works only on Integer data, which is the starting point of our work.…”
Section: Motivation and Related Workmentioning
confidence: 99%
“…This article is a revised and enhanced version of [15] that includes a new semantics of the language, the full proofs of all the results and a discussion about our prototype implementation that includes the type inference system and the experimental assessments we did.…”
mentioning
confidence: 99%