A copy of this work was available on the public web and has been preserved in the Wayback Machine. The capture dates from 2014; you can also visit the original URL.
The file type is application/pdf
.
Filters
Introduction to dynamic program analysis with DiSL
2015
Science of Computer Programming
DiSL is a new domain-specific language for bytecode instrumentation with complete bytecode coverage. ...
This paper summarizes the language features of DiSL and gives a brief overview of several dynamic program analysis tools that were ported to DiSL. ...
Partnership (project IP04-092010), by the European Commission (Seventh Framework Programme grant 287746), by the Czech Science Foundation (project GACR P202/10/J042), and International Cooperation Program of ...
doi:10.1016/j.scico.2014.01.003
fatcat:suixhaikrbacdgrv4q2zgkcdwi
Introduction to dynamic program analysis with DiSL
2013
Proceedings of the ACM/SPEC international conference on International conference on performance engineering - ICPE '13
DiSL is a new domain-specific language for bytecode instrumentation with complete bytecode coverage. ...
This paper summarizes the language features of DiSL and gives a brief overview of several dynamic program analysis tools that were ported to DiSL. ...
Partnership (project IP04-092010), by the European Commission (Seventh Framework Programme grant 287746), by the Czech Science Foundation (project GACR P202/10/J042), and International Cooperation Program of ...
doi:10.1145/2479871.2479940
dblp:conf/wosp/MarekZABSBQ13
fatcat:fvl2flsdgbbkdcif5phb2ljhyy
Complete and Platform-Independent Calling Context Profiling for the Java Virtual Machine
2011
Electronical Notes in Theoretical Computer Science
In contrast to prevailing calling context profilers, our tool is able to distinguish between multiple call sites in a method and supports selective profiling of (the dynamic extent of) certain methods. ...
In order to reduce measurement perturbation, our profiler collects platform-independent dynamic metrics, such as the number of method invocations and the number of executed bytecodes. ...
JFluid exploits dynamic bytecode instrumentation and code hotswapping in order to turn profiling on and off dynamically, for the whole application or just a subset of it. ...
doi:10.1016/j.entcs.2011.11.006
fatcat:6pw2azzoxnbcpjyflwq6ybeucy
Flexible and efficient measurement of dynamic bytecode metrics
2006
Proceedings of the 5th international conference on Generative programming and component engineering - GPCE '06
In this paper we present a novel instrumentation framework that supports the partial evaluation of compiled Java code transformation templates, with the goal of efficiently measuring chosen dynamic bytecode ...
We show the benefits of our approach in several application areas, such as platform-independent resource management and profiling of software components. ...
Our approach offers several advantages, such as ease of use, high flexibility and customizability, as well as dedicated support for efficient instrumentation schemes. ...
doi:10.1145/1173706.1173733
dblp:conf/gpce/BinderH06
fatcat:6jjt5e4fqze23myzk6q65cwsky
Polymorphic bytecode instrumentation
2015
Software, Practice & Experience
Bytecode instrumentation is a widely used technique to implement aspect weaving and dynamic analyses in virtual machines such as the Java Virtual Machine. ...
PBI enables complete bytecode coverage, that is, any method with a bytecode representation can be instrumented. We illustrate further benefits of PBI with three case studies. ...
However, flexible composition of multiple bytecode instrumentations can enable many interesting applications. For instance, a memory leak detector can analyze a profiler at work. ...
doi:10.1002/spe.2385
fatcat:arm6p5socvc4plc23dasugrkhm
Polymorphic bytecode instrumentation
2011
Proceedings of the tenth international conference on Aspect-oriented software development - AOSD '11
Bytecode instrumentation is a widely used technique to implement aspect weaving and dynamic analyses in virtual machines such as the Java Virtual Machine. ...
PBI enables complete bytecode coverage, that is, any method with a bytecode representation can be instrumented. We illustrate further benefits of PBI with three case studies. ...
However, flexible composition of multiple bytecode instrumentations can enable many interesting applications. For instance, a memory leak detector can analyze a profiler at work. ...
doi:10.1145/1960275.1960292
dblp:conf/aosd/MoretBT11
fatcat:7syarscwcjg5nkzmwud4wfuwhe
Cache-aware cross-profiling for java processors
2008
Proceedings of the 2008 international conference on Compilers, architectures and synthesis for embedded systems - CASES '08
Our cross-profiling framework is based on bytecode instrumentation. ...
An evaluation using the JOP embedded Java processor as target confirms that our approach reconciles high profile accuracy with moderate overhead. ...
Profiling embedded Java applications is difficult because of the use of emulators, the lack of cross-profiling tools, and the limited resources and profiling support on these devices. ...
doi:10.1145/1450095.1450116
dblp:conf/cases/BinderVSM08
fatcat:b56sa2dxwrhvdm6htq6hrilmpi
Advanced Java bytecode instrumentation
2007
Proceedings of the 5th international symposium on Principles and practice of programming in Java - PPPJ '07
We evaluate our approach with an instrumentation for profiling which generates calling context trees of various platform-independent dynamic metrics. ...
Current approaches to bytecode instrumentation either exclude some methods from instrumentation, severely restrict the ways certain methods may be instrumented, or require the use of native code. ...
written in pure Java (and using any Java-based bytecode engineering library). ...
doi:10.1145/1294325.1294344
dblp:conf/pppj/BinderHM07
fatcat:3n7vvj6vbzbvtog2kwlio3ui3m
Platform-independent profiling in a virtual execution environment
2009
Software, Practice & Experience
and customizable profiling agents, and second, the presentation of a Java-based profiling tool that uses dynamic instrumentation to cover all executed bytecode, a thorough analysis of the profiling overhead ...
A significant novelty is that JP also achieves complete bytecode coverage, by statically instrumenting the core runtime libraries, and dynamically instrumenting application code as well as any required ...
Dynamic Metrics and Profiling In [23] the authors present a variety of dynamic metrics, including bytecode metrics, for selected Java programs, such as the SPEC JVM98 benchmarks [48] . ...
doi:10.1002/spe.890
fatcat:spuvaf2xrze7djl2mjofmyk5xu
Many dynamic analysis tools for programs written in managed languages such as Java rely on bytecode instrumentation. ...
Tool development is often tedious because of the use of low-level bytecode manipulation libraries. ...
Zheng were with the University of Lugano. ...
doi:10.1145/2162049.2162077
dblp:conf/aosd/MarekVZABQ12
fatcat:dwbzh3tz6vbobkaloheecyhsfa
Java Bytecode Instrumentation Made Easy: The DiSL Framework for Dynamic Program Analysis
[chapter]
2012
Lecture Notes in Computer Science
of the Java Virtual Machine. ...
., profilers, debuggers, testing tools) and frameworks (e.g., aspect weavers) are based on bytecode instrumentation techniques. ...
Introduction Java bytecode instrumentation is widely used for implementing dynamic program analysis tools and frameworks. ...
doi:10.1007/978-3-642-35182-2_18
fatcat:vhdjowlzknci3guwaw6xbysjvi
We use the resulting CCTs for a detailed analysis of the dynamic behavior of Java systems and present a thorough analysis of the origin of runtime overheads. ...
CCCP relies on a generic bytecode instrumentation framework ensuring comprehensive bytecode coverage, including also the standard Java class library. ...
Figure 1a shows the static instrumentation of the standard Java class library (rt.jar), resulting in an instrumented version INST rt.jar that is used by the JVM executing the application under dynamic ...
doi:10.1145/1480945.1480967
dblp:conf/pepm/MoretBV09
fatcat:rwaqzi7bvng45bg26m4b3alqbm
Speedup Prediction for Selective Compilation of Embedded Java Programs
[chapter]
2002
Lecture Notes in Computer Science
We propose a profile based code selection scheme for an AOT Java compiler. This scheme relies on a model that accurately predicts the speedup of a given selection. ...
The model takes into account the cross-call patterns of the application. This approach allows us to reduce the size of compiled code significantly for several benchmarks. ...
TurboJ is used along with a profiler that allows the extraction of information about Java programs that is useful to partition applications (e.g., number of bytecodes executed by a method, frequency of ...
doi:10.1007/3-540-45828-x_17
fatcat:rcutfh2ggjahfpudev5wlmu4tu
Comprehensive Multiplatform Dynamic Program Analysis for Java and Android
2016
IEEE Software
We describe our research on an "all-in-one" dynamic program analysis framework which uses a combination of techniques to satisfy these requirements. ...
Dynamic program analyses, such as profiling, tracing and bug-finding tools, are essential for software engineering. ...
The extract in Figure 1 shows the kind of code involved. Instrumentation is done using the ASM bytecode library. ...
doi:10.1109/ms.2015.151
fatcat:q3ia65b2jfbcdeqzf3ty66j3ye
Analyzing performance and dynamic behavior of embedded Java software with calling-context cross-profiling
2009
Proceedings of the 7th International Conference on Principles and Practice of Programming in Java - PPPJ '09
As the size of each segment corresponds to the relative CPU consumption of the corresponding calling-context, the visualization eases the location of performance bottlenecks in embedded Java software, ...
We promote cross-profiling as an alternative approach, which is particularly well suited for embedded Java processors. ...
INTRODUCTION Profiling of embedded Java applications is a tedious task that requires either a simulator of the embedded target platform or deployment of the application on that target. ...
doi:10.1145/1596655.1596674
dblp:conf/pppj/MoretBSVA09
fatcat:vsbkqx5wj5aqxn24caf6ykcpre
« Previous
Showing results 1 — 15 out of 1,430 results