| Title: |
A Plug-in for Machine-level Profiling of Java Applications |
| Author(s):
|
Vijay Mariadassou |
| Date: |
8/31/04 |
| Location: |
TH 935 |
| Time: |
2:00 PM |
| Abstract: |
Machine-level profiling of Java applications can help in fine-tuning data structures and algorithms for peak performance. Lack of integrated tools makes machine-level profiling inaccessible to a majority of mainstream Java developers.
This paper introduces a machine-level profiling tool that is tightly integrated into the Eclipse Platform, a popular open source Java IDE. The tool is implemented as a plug-in for Eclipse; it uses Aspect-Oriented Programming to instrument Java code without modifying the Java source files. It provides an intuitive point-and-click interface that allows the user to focus on “what to profile” rather than on “how to profile”.
Our Eclipse plug-in enables the collection of machine-level performance data through a native interface that calls a cross-platform Performance API library on the host system. The library can be installed on most operating systems and provides programmatic access to performance-monitoring counters that are built into modern microprocessors. Performance-critical microprocessor events, such as cache misses, branch mispredictions and floating-point operations, can be profiled for specific Java components.
The plug-in can be used in any Java development environment that has access to the Eclipse Platform and the Performance API library.
|
| Keywords: |
Java, profiling, microprocessor, event counter, PAPI, Eclipse, Aspect-Oriented Programming.
|
| Copyright: |
Vijay Mariadassou |
|