Filters








1,430 Hits in 4.7 sec

Introduction to dynamic program analysis with DiSL

Lukáš Marek, Yudi Zheng, Danilo Ansaloni, Lubomír Bulej, Aibek Sarimbekov, Walter Binder, Petr Tůma
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

Lukáa Marek, Yudi Zheng, Danilo Ansaloni, Lubomír Bulej, Aibek Sarimbekov, Walter Binder, Zhengwei Qi
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

Aibek Sarimbekov, Philippe Moret, Walter Binder, Andreas Sewe, Mira Mezini
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

Walter Binder, Jarle Hulaas
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

Walter Binder, Philippe Moret, Éric Tanter, Danilo Ansaloni
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

Philippe Moret, Walter Binder, Éric Tanter
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

Walter Binder, Alex Villazón, Martin Schoeberl, Philippe Moret
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

Walter Binder, Jarle Hulaas, Philippe Moret
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

Walter Binder, Jarle Hulaas, Philippe Moret, Alex Villazón
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

DiSL

Lukáš Marek, Alex Villazón, Yudi Zheng, Danilo Ansaloni, Walter Binder, Zhengwei Qi
2012 Proceedings of the 11th annual international conference on Aspect-oriented Software Development - AOSD '12  
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]

Lukáš Marek, Yudi Zheng, Danilo Ansaloni, Aibek Sarimbekov, Walter Binder, Petr Tůma, Zhengwei Qi
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

CCCP

Philippe Moret, Walter Binder, Alex Villazon
2008 Proceedings of the 2009 ACM SIGPLAN workshop on Partial evaluation and program manipulation - PEPM '09  
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]

Vincent Colin de Verdière, Sébastien Cros, Christian Fabre, Romain Guider, Sergio Yovine
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

Yudi Zheng, Stephen Kell, Lubomir Bulej, Haiyang Sun, Walter Binder
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

Philippe Moret, Walter Binder, Martin Schoeberl, Alex Villazón, Danilo Ansaloni
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