- February 19, 2008
- Paul Slauenwhite
- Asaf Yaffe
- Eugene Chan
- Alexander Alexeev
- Joanna Kubasta
- Chris Elford
- Alex A. will host a technical discussion on enhancement 200320 ((ThreadProf) Add contention analysis features to TPTP Profiler), focusing on the design and implementation of the enhancement.
- Background on the Thread Profiler:
- Martini/JVMTI agent.
- Trace model extensions (e.g. thread start/stop and thread states).
- Two profiler views (Thread Statistics and Thread Utilization views).
- Contention analysis:
- Monitor contention:
- Locates monitor requests while other threads own it.
- Leads to deadlock.
- Data Contention:
- Locates data requests while other threads are using it.
- Leads to data corruption.
- Monitor contention:
- Proposed UI changes:
- New Data Contention view.
- Updates to the Thread Utilization view such as filter sets and interactions between threads.
- Critical path analysis:
- Determines which activities are critical and shortening the path by adding resources and performance tuning:
- Proposed thread events:
- Changes to the model loader to handle the following new events:
- Proposed Trace model changes:
- Joint thread execution and their interaction including thread start/stop and thread states based on the proposed thread events.
- Q: Will the existing UML2 thread sequence diagram support the new thread information added to the model under this defect?
- A: This will not be included in the scope of this enhancement. Eugene opened dependent enhancement 219442 to track this work item.
- Q: Is the contention analysis instrumentation going to be done at class load time or attach time?
- A: Both are supported and the preference is configured in the UI.
- Q: Why are some of the thread event attributes implied?
- A: The DTD for the Event Specification for Java profiling on the Platform Project web site was used and may not be correct. The Event Specification for Java profiling, DTD, and XSD should be updated with these new thread events.
- Alex A. to update the Event Specification for Java profiling, DTD, and XSD with these new thread events.
- Alex A. to reply to Paul's comments.