Accurate timestamp or derived counter value generation on a complex cpu
AssigneeMicrosoft Technology Licensing, LLC
InventorsSarath Madakasira, Keith Loren Mange
Life of this patent
Estimating the term…
Loading patent…
AssigneeMicrosoft Technology Licensing, LLC
InventorsSarath Madakasira, Keith Loren Mange
Estimating the term…
Timekeeping on a computing device is deterministically performed by implementing two successive calls to a time function that returns current time based on a continuously running counter that is maintained in one or more cores of the device's CPU. The same fixed time computation parameters are used in each call, with the single variable being a value that is read from the counter. For the initial call to the time function, the processor optimizes the instruction execution by predicting the function's execution path based on observed patterns. As the instructions and data are already cached, and the processor has the results of the prior execution path prediction, the subsequent call executes quickly and predictably relative to the initial call while the processor remains in a working (i.e., non-sleep) state. The series of calls provides a deterministic time computation with improved accuracy by mitigating the unpredictability of processor sleep state delays.
A computer-implemented method for deterministically generating a timestamp or a value derived from a continuously running counter associated with at least one processor on a computing device, the processor including a processor pipeline and data cache, the computer-implemented method comprising:
One or more hardware-based non-transitory computer-readable memory devices storing computer-executable instructions which, upon execution by at least one processor in a computing device, cause the computing device to:
A computing device configured with a high-resolution timer, comprising:
Dependencies are inferred from the claim text.