Method and system for tracing profiling information using per thread metric variables with reused kernel threads
First Claim
1. A method for monitoring performance of a program being executed using per thread metric variables with reused kernel threads comprising:
- receiving an event indication;
ascertaining kernel thread level profile information;
identifying a kernel thread, wherein the kernel thread level profile information is attributed to the identified kernel thread;
determining whether the identified kernel thread has been reused; and
updating profile information with the kernel thread level profile information based whether the identified kernel thread has been reused.
1 Assignment
0 Petitions
Accused Products
Abstract
A method and system for tracing profiling information using per thread metric variables with reused kernel threads is disclosed. In one embodiment kernel thread level metrics are stored by the operating system kernel. A profiler request metric information for the operating system kernel in response to an event. After the kernel thread level metrics are read by the operating system for a profiler, their values are reset to zero by the operating system kernel. The profiler then applies the metric values to base metric values to appropriate Java threads that are stored in nodes in a tree structure base on the type of event and whether or not the kernel thread has been reused. In another embodiment non-zero values of thread level metrics are entered on a liked list. In response to a request from a profiler, the operating system kernel reads each kernel thread'"'"'s entry in the linked list and zeros each entry. The profiler can then update the intermediate full tree snapshots of profiling information with the collection of non-zero metric variables.
-
Citations
21 Claims
-
1. A method for monitoring performance of a program being executed using per thread metric variables with reused kernel threads comprising:
-
receiving an event indication; ascertaining kernel thread level profile information; identifying a kernel thread, wherein the kernel thread level profile information is attributed to the identified kernel thread; determining whether the identified kernel thread has been reused; and updating profile information with the kernel thread level profile information based whether the identified kernel thread has been reused. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A method for monitoring performance of a program being executed using per thread metric variables with reused kernel threads comprising:
-
receiving a value of a metric variable for a kernel thread; determining if the kernel thread has been previously used by a first application thread; and applying the value of the metric variable to a second application thread if the kernel thread has been previously used by the first application thread. - View Dependent Claims (13, 14, 15, 16, 17, 18, 19)
-
-
20. A method for monitoring performance of a program being executed using per thread metric variables with reused kernel threads comprising:
-
receiving a plurality of values of metric variables for a plurality of kernel threads; for each kernel thread; determining if a kernel thread has been previously used by a prior application thread; and applying the value of the metric variable for the kernel thread to a current application thread if the kernel thread has been previously used by a prior application thread. - View Dependent Claims (21)
-
Specification