APPARTUS AND METHOD FOR THREAD PROGRESS TRACKING
First Claim
1. An apparatus for thread progress tracking, the apparatus comprising:
- a selector to select a thread included in an application program;
a controller to determine, based on a predetermined criterion, whether an execution scheme for at least one instruction included in the thread corresponds to an effective execution scheme in which an execution time is uniform or a non-effective execution scheme in which a delayed cycle is included and the execution time is non-uniform; and
an effective progress counter (EPC) to generate an effective progress index (EPI) by accumulating an execution time of an instruction executed by the effective execution scheme other than an instruction executed by the non-effective execution scheme.
2 Assignments
0 Petitions
Accused Products
Abstract
Provided is a method and apparatus for measuring a progress or a performance of an application program in a computing environment using a micro-architecture. An apparatus for thread progress tracking may select a thread included in an application program, may determine, based on a predetermined criterion, whether an execution scheme for at least one instruction included in the thread corresponds to an effective execution scheme in which an execution time is uniform or a non-effective execution scheme in which a delayed cycle is included and the execution time is non-uniform, and may generate an effective progress index (EPI) by accumulating an execution time of an instruction executed by the effective execution scheme other than an instruction executed by the non-effective execution scheme.
27 Citations
22 Claims
-
1. An apparatus for thread progress tracking, the apparatus comprising:
-
a selector to select a thread included in an application program; a controller to determine, based on a predetermined criterion, whether an execution scheme for at least one instruction included in the thread corresponds to an effective execution scheme in which an execution time is uniform or a non-effective execution scheme in which a delayed cycle is included and the execution time is non-uniform; and an effective progress counter (EPC) to generate an effective progress index (EPI) by accumulating an execution time of an instruction executed by the effective execution scheme other than an instruction executed by the non-effective execution scheme. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16)
-
-
17. A method for thread progress tracking, the method comprising:
-
selecting a thread included in an application program; determining, based on a predetermined criterion, whether an execution scheme for at least one instruction included in the thread corresponds to an effective execution scheme in which an execution time is uniform or a non-effective execution scheme in which a delayed cycle is included and the execution time is non-uniform; and generating an effective progress index (EPI) based on an effective progress counter (EPC) that accumulates an execution time of an instruction executed by the effective execution scheme other than an instruction executed by the non-effective execution scheme. - View Dependent Claims (18, 19, 20)
-
-
21. A method for thread progress tracking, the method comprising:
-
selecting a thread prepared according to an instruction to be executed on a scheduler; setting an effective progress index (EPI) stored in the thread to an initial value of an effective progress counter (EPC), and setting a kernel progress index (KPI) stored in the thread to an initial value of a kernel progress counter (KPC); determining whether a flag value set to indicate that a non-effective function in use is set in a thread control block of the thread; suspending the EPC by setting a software non-effective execution scheme (SWNE) signal, and operating the KPC by setting a kernel progress software (KPSW) signal when the flag value is set; and correcting an increment of an EPC not used for effectively executing code of the thread, operating the suspended EPC by clearing the SWNE signal, and suspending the KPC by clearing the KPSW signal when the flag value fails to be set.
-
-
22. A method for thread progress tracking, the method comprising:
-
suspending an effective progress counter (EPC) by setting a software non-effective execution scheme (SWNE) signal, and operating a kernel progress counter (KPC) by setting a kernel progress software (KPSW) signal in response to a schedule event occurring in a thread in a running state; storing a value of the suspended EPC to be a value of an effective progress index (EPI) in a memory in response to a context switch event occurring in a state in which the EPC is suspended; and correcting an increment of an EPC not used for effectively executing code of the thread, operating the suspended EPC by clearing the SWNE signal, and suspending the KPC by clearing the KPSW signal in response to the schedule event being terminated in a state in which the EPC is suspended.
-
Specification