Run-ahead approximated computations
AssigneeInternational Business Machines Corporation
InventorsChristopher J. Craik, H. Peter Hofstee, Damir A. Jamsek, Jian Li
Life of this patent
Estimating the term…
Abstract
Mechanisms are provided for performing approximate run-ahead computations. A first group of compute engines is selected to execute full computations on a full set of input data. A second group of compute engines is selected to execute computations on a sampled subset of the input data. A third group of compute engines is selected to compute a difference in computation results between first computation results generated by the first group of compute engines and second computation results generated by the second group of compute engines. The second group of compute engines is reconfigured based on the difference generated by the third group of compute engines.
Claims13
A computer program product comprising a non-transitory computer readable storage medium having a computer readable program stored therein, wherein the computer readable program, when executed on a computing device, causes the computing device to:
- select a first group of compute engines, from a pool of compute engines, to execute full computations on a full set of input data;
- select a second group of compute engines, from the pool of compute engines, to execute computations on a sampled subset of the input data;
- select a third group of compute engines, from the pool of compute engines, to compute a difference in computation results between first computation results generated by the first group of compute engines and second computation results generated by the second group of compute engines;
- and
- reconfigure the second group of compute engines based on the difference generated by the third group of compute engines at least by modifying a number of compute engines selected to be part of the second group of compute engines, wherein the second group of compute engines comprises a number of compute engines that is smaller in number than a number of compute engines in the first group of compute engines.
A data processing system, comprising:
- a coordinator engine;
- and
- a pool of compute engines coupled to the coordinator engine, wherein the coordinator engine:
- selects a first group of compute engines, from the pool of compute engines, to execute full computations on a full set of input data;
- selects a second group of compute engines, from the pool of compute engines, to execute computations on a sampled subset of the input data;
- selects a third group of compute engines, from the pool of compute engines, to compute a difference in computation results between first computation results generated by the first group of compute engines and second computation results generated by the second group of compute engines;
- and
- reconfigures the second group of compute engines based on the difference generated by the third group of compute engines at least by modifying a number of compute engines selected to be part of the second group of compute engines, wherein the second group of compute engines comprises a number of compute engines that is smaller in number than a number of compute engines in the first group of compute engines.
Dependencies are inferred from the claim text.