2006
DOI: 10.1016/j.entcs.2006.07.011
|View full text |Cite
|
Sign up to set email alerts
|

Exact and Portable Profiling for the JVM Using Bytecode Instruction Counting

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1
1

Citation Types

0
20
0

Year Published

2006
2006
2016
2016

Publication Types

Select...
3
2

Relationship

1
4

Authors

Journals

citations
Cited by 13 publications
(20 citation statements)
references
References 26 publications
0
20
0
Order By: Relevance
“…It helps to detect hot spots and performance bottlenecks, guiding the developer to the parts of a program that should be improved. We have shown in [6] that this approach allows exact profiling with overheads that are about two orders of magnitude lower 15 than standard tools for Java. Thus, the developer no longer has to carefully select the sub-parts of his application that he wants to profile.…”
Section: Further Extensionsmentioning
confidence: 99%
See 1 more Smart Citation
“…It helps to detect hot spots and performance bottlenecks, guiding the developer to the parts of a program that should be improved. We have shown in [6] that this approach allows exact profiling with overheads that are about two orders of magnitude lower 15 than standard tools for Java. Thus, the developer no longer has to carefully select the sub-parts of his application that he wants to profile.…”
Section: Further Extensionsmentioning
confidence: 99%
“…A far more efficient approach taken here is to patch the real Thread class and add the needed reference directly to its set of instance fields. 6 The required functionality of getCurrentAccount() is unfortunately hard to implement during the bootstrapping of the JVM. During this short, but crucial period, there is an initial phase where Thread.currentThread() pretends that no thread is executing and returns the value null (this is in fact because the Thread class has not yet been asked by the JVM to create its first instance).…”
Section: Refining Getcurrentaccount()mentioning
confidence: 99%
“…Our implementation, which is built using the ASM library 5 for bytecode manipulation and a Java agent to get access to and transform the classes, is based on previous approaches to deal with resource accounting and profiling in Java [10,38,39]. As in previous approaches, we compute the length of each basic block to count the number of executed instructions and we try to keep a cache of known methods with a single basic block.…”
Section: Implementation Strategymentioning
confidence: 99%
“…For example, for a simple Web server component we can define a contract on the number of instructions per second it may execute [10] and the maximum amount of memory it can consume. The number of messages can be specified per component or per component-port.…”
Section: Specifying Component Contractsmentioning
confidence: 99%
See 1 more Smart Citation