Zahid Qureshi posted "Inspecting Hotspot JVM Options," which details how to see some of the JVM tuning flags, along with some examinations of what some of the flags mean.

He says there are 717 options for the JVM, a far larger count than the JVM tooldocs page talks about (I got 701, not 717, but big deal, he might be on a different OS than I am so there may be differences - and this is one of the points he makes, that you have to look at the platform your on because the options might change without warning.) They're primarily for the Oracle/Sun JVM (thus, "Hotspot") but it's fascinating to see how deep the tunings go.

You get to see types (uintx, intx, bool, etc), option name, and value when you check out the options - some of them are very fine-grained, which provides a lot of potential when tuning the JVM. It also can show you what some of the options you use regularly actually change; he does a good job of explaining some of the differences that get put in place when using the server VM vs. the client JVM.

Excellent stuff, well worth reading for those people who say Java performs badly - you still have to do some work, you knwo?