This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.
Summary: | Unacceptable variance of CPU results | ||
---|---|---|---|
Product: | profiler | Reporter: | ehucka <ehucka> |
Component: | Base | Assignee: | issues@profiler <issues> |
Status: | CLOSED WONTFIX | ||
Severity: | blocker | ||
Priority: | P2 | ||
Version: | 4.x | ||
Hardware: | All | ||
OS: | All | ||
Issue Type: | DEFECT | Exception Reporter: |
Description
ehucka
2005-08-19 10:26:23 UTC
I found that when 'getresults' is called in a time a method is entered but not exited the profiler client probably counts a difference between method entry and getresults time and adds it to the method's self time. (The difference is subtracted after showing of results.) The method's invocations counter is increased after the method is entered. If a user take snapshot in a 'wrong' time profiler can return results: 10 invocations of a method (each should take 1000 ms) and self time 9536ms. Maybe it should show only finished invocations of a method: 9 invocations, self time 9000ms or to have more counters: 9 invocations, 10 method's entries, measured time 9000ms, actual time 9536ms The results are actually correct. The results have to include partial results for methods that have not finished yet - definitely for submethods called, as those may have finished their execution, and if those are included, the self time needs to be included too for accuracy. The clearest example is with methods that never exit - such as run () method or all threads - if partial timing would not be included, no results would be available until the thread finishes - which is never for most typical threads. verified |