“Instrument error refers to the combined accuracy and precision of a measuring instrument, or the difference between the actual value and the value indicated by the instrument (error)…a way to deal with instrument error may be to reduce the reactivity of the system to being measured…reactivity is a phenomenon that occurs when individuals (systems) alter their performance or behavior due to the awareness that they are being observed….accuracy of a measurement system is the degree of closeness of measurements of a quantity to that quantity’s actual (true) value…precision of a measurement system, also called reproducibility or repeatability, is the degree to which repeated measurements under unchanged conditions show the same results.” – Wikipedia
This article was written in response to a message thread on the LinkedIn “Java Performance Professional” group in which the effectiveness of instrumentation based Java Profilers solutions was called into question in profiling well tuned systems including high frequency low latency message processing platforms. Here is a comment from a performance analyst at a very big and blue IT management software and services company
“On a sufficiently large java application, many profilers either have prohibitively large overhead; some simply cannot handle the volume of data.”
In the remaining part of this article we will simply present the different realities offered up by each Java profiling solution, for now ignoring the fact some of these tools have changed the throughput of the system so drastically that it could be viewed as an entirely different system. Which “reality” do you think more accurately reflects the places in the code that represent the execution hotspots? Which “reality” do you think more accurately reflects the places in the code that represent the locations from which performance optimizations should be driven? These two need not necessarily be the same. Well if you think you have the right answer to both of these questions then please create a posting on your own blog and link to this article. We will track the links and if the analysis seems reasonable we will link back.