★ wanayoo — archive 1999 http://developers.sun.com/dev/coolstuff/bios/doherty.htmlNouvelle recherche | Portail wanayoo
Skip Masthead Links developers.sun.com   » search tips  |  Search:     
The Source for Developers
Products and TechnologiesTechnical Topics
Sun Microsystems
 
 
Emerging Technologies
Coolstuff


Brian Doherty Software Staff Engineer, Java Performance Engineering Group,
Sun Microsystems, Inc.

Brian Doherty is a Staff Engineer in the Java Performance Engineering group at Sun Microsystems, where he works on performance analysis and tuning of Java technology based benchmarks and customer applications. Brian is the principal engineer for the jvmstat project, which provides an instrumentation infrastructure for the HotSpot Java Virtual Machine and a set of tools for viewing this instrumentation.

Prior to joining the Java Performance Engineering group, Brian was a System Engineer, specializing in Java Technologies and working with large financial, telecommunication, and retail customers in the mid-western region of the United States. Before coming to Sun Microsystems in 1994, Brian worked for AT&T Bell Laboratories in Naperville, IL for nearly 10 years where he worked on a high availability application framework, virtual machine technologies, and a fault tolerant variant of the UNIX operating system used in various AT&T switching systems. Outside of work, Brian enjoys golf, biking, roller blading, and spending time with his family.

According to Brian...

The Java Performance Engineering team is routinely running industry and customer benchmarks. We find that many of the available mechanisms for extracting Java Virtual Machine performance data are too intrusive from either an application availability or performance perspective. This is particularly true when we need to gather performance data from live customer applications, where setting command line options or enabling JVMPI based tools is out of the question. Our ability to unintrusively gather configuration and performance data in these situations is critical to solving this class of performance problems.

When looking at this problem, David Stoutamire and I considered the ease of collecting performance data with the Solaris operating system and asked ourselves how we could make observability of the JVM just as easy. We concluded that the HotSpot JVM needed to provide always-on instrumentation that can be accessed with lightweight tools that don't compromise the performance or availability of the application. Given that the inspiration for this concept was the UNIX style 'stat' tools, it seemed natural to name the technology 'jvmstat'.

The jvmstat project adds light weight performance and configuration instrumentation to the HotSpot Java Virtual Machine and provides a a set of tools for monitoring this instrumentation. The jvmstat tools allow this data to be collected in an unintrusive way. Optional with HotSpot 1.4.1, and enabled by default in HotSpot 1.4.2, the HotSpot JVM provides information on the configuration and performance of the generational garbage collection system, the JIT compiler, and the class loader. This set of instrumentation was chosen as it corresponds with the data available through various command line options; options that we typically request when analyzing a customer performance issue.

The visualgc tool was originally an application developed by Ben Kim for the 'Big Iron' talk given by David Stoutamire at JavaOne in 2001. Its original purpose was to demonstrate how the relationships between the spaces and generations in the heap can change the performance characteristics of a Java application. Dave and I agreed that an adaptation of this tool to live instrumentation would make a killer jvmstat demo, and thus visualgc was reborn as a useful monitoring tool.

Why CoolStuff?

The Java Performance Engineering group has been using the jvmstat tools to monitor various industry benchmarks for over a year. The coolstuff website provides an opportunity to make these tools available for our customers. With these tools, we hope to get more accurate configuration information and more easily obtained performance information from customers, allowing us to better solve their performance problems. We expect that developers and system administrators will benefit from these tools by getting better insight into the relationship between their application and the HotSpot JVM. Finally, we also hope to get customer feedback on the usefulness of these tools.

Contact jvmstat-support@sun.com if you encounter bugs or have questions/comments regarding the jvmstat technology.