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 -~----------~----~----~----~------~----~------~--~---