Alex Rivera | Logout

What is the best macro-benchmarking tool / framework to measure a single-threaded complex algorithm in Java?

Asked 2011-08-22T10:36:25.190
58

I want to make some performance measures (mainly runtime) for my Java code, a single-threaded, local, complex algorithm. (So I do not want a macro-benchmark to measure a JVM implementation.)

With the tool, I would like to

  • analyse the complexity, i.e. see how my code scales for a parameter n (the search depth). (I already have a junit test parameterized in n.)
  • do some trend analysis to get warned if some change to the code base makes the code slower.

For this, I would like to use a tool or framework that

  • does the statistics, optimally computing the mean value, standard deviation and confidence intervals. This is very important.
  • can be parameterized (see parameter n above). This is also very important.
  • is able to produce a fancy plot would be nice, but is not required
  • can be used in an automated (junit-)test to warn me if my program slows done, but this is also not required, just a plus.

What tools/frameworks fulfill these requirements? Which one would be well suited for complexity and trend analysis, and why?

Edit
Report

1 Answer

9

Another alternative is caliper from google. It allows parameterized testing.

answered 2011-08-25T06:22:12.533

Your Answer