My Photo

Twitter Updates

    follow me on Twitter

    Google Ad Skyscraper

    « Running iLog jRules in WebSphere eXtreme Scale | Main | Running btrace on multiple JVMs on a single box »

    June 06, 2009

    Comments

    A.O.P I am tired of technology

    Is the AgentManager interface implemented by multiple classes? Are calls to such implementations nested?

    Billy Newport

    No, but rather than specify in a public blog entry the actual class name of the implementation, it seems better to just say anything that implements AgentManager which should just be the ibm runtime and this will always work even if we changed the impl class name. Only issue of course, is someone proxying it but they can then just make more specific scripts.

    A.O.P I am tired of technology

    It is worth pointing out to others that this script if ported to another problem context would give completely incorrect (understated) results if there was indeed nesting of calls matching the same probe point. You would be over-writing the timestamp (static) field in a nested call. Is this not the case?

    Billy

    Yep
    The more I use it, the scripts are extremely limited. Not being able to call static methods for common sections of code means extensive copy and paste with the associated head aches on maintenance and readability.

    A.O.P I am tired of technology

    Once you go beyond the hello world examples you will quickly realize that it is fundamentally broken not to mention that its overhead in the context of performance measurement (aggregation) is not just huge it is colossal.

    The first rule in software performance engineering is always measure the tool's overhead ** first ** before giving any due consideration to the data report. You failed the test. Next.....

    Billy Newport

    I'm finding very little difference in performance between running with it or without it. So, I think what ever axe you have to grind then it'd be nice if you just said. While it's cool to shoot arrows when you're anonymous, it carries a lot more weight when people know who you are and what the agenda is.

    Thanks

    Billy Newport

    I guess to put further context on this. This is a very simple tool. It does not do what jxinsight does or a Wily introscope. For just kicking something around, its easy to use and you can get numbers out in minutes. I'd still recommend jx or even wily once you get to cluster of things or 'production'.

    A.O.P I am tired of technology

    An average overhead of 16 microseconds per method seems high to me if applied to a sufficiently large code (not just a single method) base with eXtreme performance requirements. Not to mention the fact that you will very quickly get integer overflow in the aggregation which is ** int ** based as you have clearly found out above.

    "There are only two ways of telling the complete truth --anonymously and posthumously."

    Verify your Comment

    Previewing your Comment

    This is only a preview. Your comment has not yet been posted.

    Working...
    Your comment could not be posted. Error type:
    Your comment has been posted. Post another comment

    The letters and numbers you entered did not match the image. Please try again.

    As a final step before posting your comment, enter the letters and numbers you see in the image below. This prevents automated programs from posting comments.

    Having trouble reading this image? View an alternate.

    Working...

    Post a comment