Back to results
US 8,145,943 B2Granted
State variable-based detection and correction of errors
AssigneeEmpire Technology Development LLC
InventorMiodrag Potkonjak
Life of this patent
Estimating the term…
Abstract
Embodiments provide methods and apparatuses for detecting errors in a computation using state variables. In various embodiments, corrections of the errors through the state variables are also provided. In various embodiments, the disclosed techniques may be used for power and/or energy minimization/reduction, and debugging, among other goals. Other embodiments and/or applications may be disclosed and/or claimed.
Claims33
A method comprising:
- receiving by a first computing platform, one or more current values of a set of one or more state variables of a cut of a computation performed on a second computing platform using one or more input data, wherein the set of one or more state variables define the computation after the cut;
- and
- detecting by the first computing platform, one or more errors of the computation performed on the second computing platform, detecting being based, at least in part, on the set of one or more state variables of the cut of the computation;
- wherein the computation is independently performed on the second computing platform, and except for detecting error by the second computing platform for the first computing platform, the computation is computationally unassociated with the first computing platform.
1 more element
A method comprising:
- performing a computation, by a first computing platform, using one or more input data;
- capturing one or more current values of a set of one or more state variables of a cut of the computation, by the first computing platform, wherein the set of one or more state variables define the computation after the cut;
- and
- sending the captured one or more current values of the set of one or more state variables of the cut of the computation from the first computing platform to a second computing platform for the second computing platform to detect one or more errors of the computation performed on the first computing platform, and to provide corrections to the first computing platform for one or more of the detected errors
- wherein the computation is independently performed on the first computing platform, and except for detecting error by the first computing platform for the second computing platform, the computation is computationally unassociated with the second computing platform.
2 more elements
An apparatus comprising:
- a processor to execute programming instructions;
- and
- a storage device coupled to the processor, and having stored therein a plurality of programming instructions to be executed by the processor, wherein when executed by the processor, the programming instructions enable the apparatus
- to receive one or more current values of a set of one or more state variables of a cut of a computation performed on another computing platform using one or more input data, wherein the set of one or more state variables define the computation after the cut;
- and
- to detect for one or more errors of the computation performed on the second computing platform, detecting being based at least in part, on the set of one or more state variables of the cut of the computation performed on the another computing platforms;
- wherein the computation is independently performed on the other computing platform, and except for detecting error by the apparatus for the other computing platform, the computation is computationally unassociated with the apparatus.
4 more elements
An apparatus comprising:
- circuitry to perform a computation, using one or more input data, including one or more state elements to capture one or more current values of the computation to provide a set of one or more state variables of a cut of the computation, wherein the set of one or more state variables define the computation after the cut;
- and
- a controller coupled to the circuitry and configured to send the captured one or more current values of the set of one or more state variables of the cut of the computation from the apparatus to another computing platform for the another computing platform to detect one or more errors of the computation performed on the apparatus, and for the another computing platform to provide to the apparatus corrections for one or more of the detected errors
- wherein the computation is independently performed on the apparatus, and except for detecting error by the other computing platform for the apparatus, the computation is computationally unassociated with the other computing platform.
1 more element
An article of manufacture comprising:
- a computer readable medium;
- and
- programming instructions stored in the computer readable medium, and configured to program and enable a first computing platform to:
- receive one or more current values of a set of one or more state variables of a cut of a computation performed on a second computing platform using one or more input data, wherein the set of one or more state variables define the computation after the cut;
- detect for one or more errors of the computation performed on the second computing platform, wherein detection is based, at least in part, on the set of one or more state variables of the cut of the computation;
- determine a set of one or more corrections;
- and
- provide to the second computing platform, the set of one or more corrections;
- wherein the computation is independently performed on the second computing platform, and except for detecting error by the first computing platform for the second computing platform, the computation is computationally unassociated with the first computing platform.
6 more elements
An article of manufacture comprising:
- a computer readable medium;
- and
- programming instructions stored in the computer readable medium, and configured to program and enable a first computing platform to
- configure the first computing platform to perform a computation with an arrangement of state elements;
- capture one or more current values of the state elements to provide a set of one or more state variable values of a cut of the computation performed under the configured state element arrangement wherein the set of one or more state variables define the computation after the cut;
- and
- send the captured one or more current values of the set of one or more state variables of the cut of the computation to a second computing platform for the second computing platform to detect one or more errors of the computation performed on the first computing platform under the configured state element arrangement, and for receiving back from the second computation platform corrections for one or more of the detected errors;
- wherein the computation is independently performed on the first computing platform, and except for detecting error by the second computing platform for the first computing platform, the computation is computationally unassociated with the second computing platform.
5 more elements
Dependencies are inferred from the claim text.