Community
Participate
Working Groups
Method Level CPU usage (ie CPU time used by a method as distinct from its elapsed time) BCI Instrumentation provides this metric
Update target and priority based on TPTP Features for 3.2+ document
Updating feature target per 01/10 UI main committers meeting Need to be discussed the validity of this feature for 3.3 since there are no agents controllers to send this type of data yet. Eugene, please open a feature for the agent controller and mark this as a dependency
After discussion with Hendra, prerequisite runtime feature 82519 is not containable in 3.3. As a result. I am proposing to defer this feature to the same release as 82519 which is 4.1
The fix for bug 82519 was checked in on 03/15 1:20pm. methodEntry and methodExit elements have attributes threadCpuTime that represents the elapsed cpu time in nanoseconds that the thread associated with threadIdRef has been running. The value is a standard java long. The way to turn on the printing of these attributes in the trace is by setting THREAD_CPU_TIME = true
Robert, According to Marius, the attribute supported on loader side is 'cpuTime' and it's only supported in methodExit. Marius, can you give more information here?
threadCpuTime was the name that Richard gave the attribute when he did the preliminary work on this item way back with jdk1.2. It's easy enough to change. Just let me know. As for it being only in methodExit -- I'm not sure how you would be able to calculate cpu method timings if you don't also have the cpuTime value in the methodEntry attribute.
Here is the JavaDoc for this attribute: * Holds the thread CPU time consumed during the execution of this call invocation. * Note the "TRCFullMethodInvocation" includes an existing "double" attribute "overhead" which is currently used as the instrumentation overhead in elapsed time measurement. * When "cpuTime" is set this "overhead" attribute will also apply to both elapsed and CPU calculation (Duration = exitTime - entryTime - overhead) and in calculating the raw CPU time (Method CPU Time = cpuTime - overhead) The cpuTime should be sent only on the methodExit (not as an absolute value on methodEntry/methodExit.) and should represent the CPU consumed time in that method invocation (including the overhead, I subtract the overhead in the loader, so you'll get the real value).
Now that we have a "3.3" Version in bugzilla, updating bugzillas targeted to 3.3 or a 3.3 iteration so that their Version matches their Target. "future", "unspecified", "4.0", and "4.1" Versions will not be updated.
Per discussion with Harm, Marius and Eugene: attribute is now "cpuTime" and appears only on methodExit elements. It represents the cumulative cpu time of the method invocation represented by the methodExit and corresponding methodEntry element. I subtract any cpu time overhead (i.e. cpu time spent in the piAgent) prior to outputting the value. Also, to enable the option, set CPU_TIME = true (instead of THREAD_CPU_TIME = true) (Update is in CVS as of 3/16/05 2:40pm.)
code checked into TPTP 3.3
fixed in tptp 4.0
close feature