On Thu, Jul 16, 2009 at 11:00 AM, Glen Stampoultzis<gst...@gmail.com> wrote:
> Apparently it's possible to see the assembly instructions if you're running
> a debug VM [1].
>
> -XX:+PrintOptoAssembly dumps to the console a log of all assembly being
> generated for JITed methods. The instructions are basically x86 assembly
> with a few Hotspot-specific instruction names that get replaced with
> hardware-specific instructions during the final assembly phase. In addition
> to the JITed assembly, this flag also shows how registers are being
> allocated, the probability of various branches being followed (along with
> multiple assembly blocks for the different paths), and information about
> calls back into the JVM.
>
> [1] http://blog.headius.com/2009/01/my-favorite-hotspot-jvm-flags.html
>

I don't have any concrete links right now but be sure to check the
slides (and videos) to JavaOne presentation of at least the last 3
years. Most of the time some of topics are presented at JavaOne in
specialized talks by engineers from CPU manufacturers. Not a lot of
Java developers would usually have the knowledge to go that deep down
to the metal, but it's very interesting to have someone from AMD or
Intel show you how to look at the JVM at that level. I remember that
there was an AMD talk one year where they showed an AMD (& Win) tool
to look into the CPU caches and registers, and how they used it to
pinpoint a synchronization problem that you wouldn't be able to find
with JVM level tools. Don't know about a specific talk, but Intel has
similar tools.

Also usually a great source of information are talks from Cliff Click
and other Azul people. Since they take the JVM-hardware combo to a
whole new level, they also have a lot of info on that layer.

Cheers,
Daniel

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to