views:

732

answers:

5

I have written a small java application for which I need to obtain performance metrics such as memory usage, running time etc., Is there any simple to use performance measurement tool available?

+2  A: 

Apache JMeter has a ton of features, for benchmarking http requests, JDBC calls, web services, JMS, mail, regular Java requests, etc.

matt b
+5  A: 

Yourkit is pretty good (free 30 day trial). Eclipse also has built in TPTP tools.

A: 

For runtime metrics, use any profiler such as VisualVM, Netbeans Profiler, or the Eclipse TPTP Tools. A profiler usually gives you more fine-grained metrics such as the runtime for individual functions, hotspots, etc.

You might also check out the list of Open Source JMX tools.

Use these in combination with JMeter and other such load-generator tools.

James Schek
A: 

One program that doesn't get mentioned is Oracle's (BEA) Mission Control. It comes with the JRockit JVM (which is supposed to be the fastest JVM on the Intel platform), which is available free from http://www.oracle.com/technology/software/products/jrockit/index.html.

Mission Control is essentially Oracle/BEA's counterpart to JConsole, but offers significantly more. It'll even work with other JVMs, though you'll need JRockit to take advantage of the more advanced features (e.g., method profiling).

Jack Leow
A: 

An open source professional benchmarking tool for java is faban . a blog post about faban is at : http://weblogs.java.net/blog/sdo/archive/2007/04/simple_benchmar.html

anjanb