InfoQ

InfoQ

News

My Bookmarks

Login or Register to enable bookmarks for unlimited time.

The content has been bookmarked!

There was an error bookmarking this content! Please retry.

JProbe 8.0: The Java code, memory, and coverage profiler is back

Posted by Steven Haines on Jul 04, 2008

Sections
Process & Practices,
Architecture & Design,
Development
Topics
Debugging ,
Java ,
Code Analysis
Tags
YourKit ,
Quest Software ,
Quality ,
JProbe ,
Performance Evaluation ,
Memory Leaks

Quest Software recently released JProbe 8.0, a Java code, memory, and coverage profiler. While JProbe has been one of the leading Java profiling tools since the late 1990's, in recent years Quest has faced stiff competition from the likes of YourKit and JProfiler, both providing similar features, but at a lower price point. JProbe 8.0 aims to help Quest regain the leadership position in the profiling market with a new Eclipse plugin and a more competitive price point. InfoQ spoke to Quest Software's Wayne Chan to get the inside scoop. Wayne characterized the new release as follows:

"JProbe 8.0 features two primary new improvements.  JProbe 8.0 now offers a plug-in for the Eclipse Java IDE enabling smoother code to testing transitions.  With this new capability, developers have the ability to conduct memory analysis and code coverage seamlessly in the Eclipse Java IDE.  In the coming months, we also plan to add performance analysis capabilities to our Eclipse Plug-in to allow users to investigate performance bottlenecks without having to leave the Eclipse environment. It also promotes the adoption of performance testing best practices resulting in faster mean time to resolution.  The other primary enhancement is improved usability through a refreshed UI for an enhanced look and feel and a more intuitive workflow.  We’ve greatly improved component functionality, data visualization and its investigative tools to enable quicker and more efficient analysis and diagnosis of memory allocation issues."

To the important question, how will JProbe 8.0 make developers' lives easier, Wayne responded that JProbe's Eclipse plugin will allow developers to profile their code without leaving Eclipse, which increases efficiency and productivity. Furthermore, JProbe's automation capabilities (the ability to control all aspects of JProbe from an Ant build script) provide a mechanism to facilitate "continuous performance testing", which is an extension to test-driven development and continuous integration that provides support for automatically discovering and profiling unit test cases. In short, the automation features in JProbe remove the manual process of capturing performance snapshots which can be error prone and if a project is too large, can be inconvenient to perform on a regular basis.

In addition to Eclipse integration, Quest redesigned JProbe's user interface. The following screen shots illustrates some of the changes:

Why should you choose JProbe over its competition? Wayne identifies the following differentiators:

"JProbe’s ability to plug into the Eclipse Java IDE for seamless code profiling is a clear differentiator.  Not having to jump out of your IDE and open up a separate console to perform your unit tests can provide a boost in productivity and efficiency.  JProbe is also backed by Quest Software’s world-class support which provides phone and e-mail technical support as well as the JProbe Community which brings together both Quest’s R&D team and other JProbe customers – creating an environment for collaboration and technical discussion/support.  Along with the technical support, Quest offers free major and minor product upgrades when a customer is current on maintenance.  JProbe also offers integration with PerformaSure, Quest Software’s performance diagnostic solution – coupling multi-JVM and multi-tier Java performance diagnostics with line-level root cause analysis.  This provides a complete, integrated solution for conducting unit performance testing and integration/load testing across the Java distributed systems stack in an pre-production environment."

In its initial release, JProbe's Eclipse plug-in supports memory analysis of JProbe generated heap snapshots and JVM generated heap dumps, as well as coverage snapshots Subsequent releases will allow developers to capture and analyze memory, coverage, and performance snapshots all from within Eclipse. Quest released the memory analysis Eclipse Plug-in as JProbe Freeware, which supports analyzing JProbe snapshots or JVM heap dumps. And to fully make use of JProbe inside Eclipse, Quest will be shortly releasing a white paper describing how to exploit JProbe's automation features to integrate with Eclipse's Ant support.

Beyond the free plug-in, pricing starts at $698 per developer (USD). 

More information about memory profiling in Eclipse is available in a Quest white paper presenting best practices for memory analysis in Eclipse and more information about performance and scalability can be found at  http://www.infoq.com/performance-scalability.

No comments

Watch Thread Reply

Educational Content

10 tips on how to prevent business value risk

One category of risk that project teams need to ensure they address is business value failure – delivering a product that fails to provide value for the business investor.

Interview: Software Systems Architecture: Working With Stakeholders Using Viewpoints and Perspectives

InfoQ spoke to the authors of Software Systems Architecture on a couple of new topics, the System Context viewpoint and Agile, which have been added to the second edition.

Beauty Is in the Eye of the Beholder

Alex Papadimoulis discusses ugly code, where it comes from, how to avoid it, and how to get rid of it.

Architecting Visa for Massive Scale and Continuous Innovation

John Davies examines Visa’s architecture and shows how enterprises have architected complex integrations incorporating Hadoop, memcached, Ruby on Rails, and others to deliver innovative solutions.

Max Protect: Scalability and Caching at ESPN.com

Sean Comerford unveils ESPN.com’s architecture, what components are used and why, and the current changes the website goes through.

The Seven Deadly Sins of Enterprise Agile Adoption

Are there repeated patterns of failure on Enterprise Agile Enablement efforts? Sanjiv and Arlen discuss Seven Deadly Sins to avoid when adopting Agile in an enterprise.

Questions for an Enterprise Architect

Erik Dörnenburg answers: What is Enterprise and Evolutionary Architecture?, discussing 4 issues: Turning strategy into execution, Ensuring conformance, Where do the architects sit? Buying or building?

Wrap Your SQL Head Around Riak MapReduce

Sean Cribbs explains what Map-Reduce and Riak are, why and how to use Map-Reduce with Riak, and how to convert SQL queries into their Map-Reduce equivalents.