| « July 2008 | | Sun | Mon | Tue | Wed | Thu | Fri | Sat |
|---|
| | | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | | | | | | | | | | | | Today |
LINKS
CONTACT
Tom Marble's Weblog
template by
Helquin
|

Tuesday July 25, 2006
Java Benchmarking Folksonomy
One of the hot topics in the Java Libre crowd is
around performance benchmarking and the tools and
infrastructure to be successful at it.
I've thought about how to represent the different components of the
story: from microbenchmarks to macrobenchmarks, load drivers,
test harnesses, statistics tools and results visualization.
Here is a fantastic space for Open and Free collaboration -- this
is a common need and we often end up reinventing the wheel.
Of course those that know me know that I'm big on collaboration.
A recent essay by
Larry Sanger defines Strong Collaboration.
This is a very important work in it's own right and merits the
time to read it and grok it [ with a cup of Java ;-) ].
For my purpose here I'm looking for collaboration on the components,
but also the meta information: how to find existing work and
avoid duplication of effort.
That's why organizing the different facets of benchmarking
cannot really live on a static web page and invite collaboration.
My first instinct is to grab a Wiki... but many people are shy
about editing Wikis and they are notoriously flat.
So as I'm trying to develop a collaborative taxonomony it seems
the logical approach is to hack del.icio.us as our
Open Source Java Benchmarking Folksonomy.
So after a little research I decided that everything in this
folksonomy will have the tags opensource java benchmarking.
Then additional tags can point to specific areas, such as:
- benchmark a benchmark
- microbenchmark a microbenchmark
- macrobenchmark a macrobenchmark
- suite a set of many benchmarks
- loaddriver a synthetic load generator
- harness a benchmarking script/program
- stats statistics calculation tools for benchmarks
- visualization tools for viewing results
- results publication of specific results
- article a review of benchmarking and/or tools
- index a directory of tools
So here it is: the Java Benchmarking Folksonomy
You can find all my sites with:
http://del.icio.us/tmarble/opensource+java+benchmarking
You can find all everyone's sites -- the public Java
Benchmarking Folksonomy at:
http://del.icio.us/tag/opensource+java+benchmarking
I have included links to the global entries in the folksonomy
(and my links in parentheses).
- benchmark (tmarble: benchmark)
One challenge I had right away is around the exact definitions
of microbenchmark and macrobenchmark. Another challenge is that
the japex project is really an infrastructure for creating
microbenchmarks. So right away we have some semantic challenges.
At least for starters I encourage you to check out the
Beware of Microbenchmarks! section of the
Java Performance Tuning White Paper.
- suite
(tmarble: suite)
Well, I'm in trouble again because suite could mean, literally,
that one benchmark is comprised of some very specific
sub-benchmarks. Alternatively it could be just a grabbag of
different benchmarks. I'll let this ambiguity remain for now.
- loaddriver (tmarble: loaddriver)
Sun has contributed nicely to this space of synthetic load generation.
- harness (tmarble: harness)
I'm sorry to say I haven't found a Free benchmarking Framework that
is a standalone harness. I'm sure every one of the suites has some
kind of harness, but I haven't found a generic one.
The value of a harness is outlined in Use a benchmark harness.
-
stats (tmarble:
stats)
Like the harness I haven't tagged anything here yet. This is tricky
because I'm sure there are some statistics tools in Java -- don't
know if there are any standalone packages (i.e. for calculating
the student's
T-Test). See also Use
Statistics. While looking at other's stats tags I found this link
which made me chuckle: Programmers Need To Learn Statistics Or I Will Kill Them All.
- visualization
(tmarble: visualization)
This is the fun part... actually using your inner Don Norman to
show people what the data says.
- results (tmarble: results)
As we get better at doing this benchmarking Libre I expect
we will see many more publications.
- article (tmarble: article)
Tag with article for whitepapers, reviews, columns and otherwise
human readable discussion on Java benchmarking.
we will see many more publications.
-
index (tmarble:
index)
And, of course, the whole concept of open collaboration is that
we are standing on the shoulders of giants. Use index to
tag other taxonomies on Java benchmarking.
Of course this is a first draft... Now your homework is to
add the Firefox
extension for del.icio.us so that you can tag in one click.
Then as you find relevant pages tag them as shown above and
voila the Java Benchmarking Folksonomy will grow
in parallel without every having to "publish" anything nor ask
for permission to "commit". How will you know if or
when anyone contributes? Add the
RSS
feed for the Java Benchmarking Folksonomy bien sûr!
There are bound to be more semantic
potholes so please comment here, drop me a line or find me
on OFTC #debian-java and let's collaborate!
Posted by tmarble
( Jul 25 2006, 02:13:15 AM CDT )
Permalink
|