Technique for improving processor performance
AssigneeHewlett-Packard Development Company, L.P.
InventorsPhillip M. Jones, Robert A. Lester, Jens K. Ramsey, William J. Walker, John E. Larson, James Andre, Paul Rawlins
Life of this patent
Estimating the term…
Abstract
Method and apparatus for improving processor performance. In some embodiments, processing speed may be improved by reusing data stored in a buffer during an initial request by subsequent requests. Assignment of temporary storage buffers in a controller may be made to allow for the potential for reuse of the data. Further, a hot buffer may be designated to allow for reuse of the data stored in the hot buffer. On subsequent requests, data stored in the hot buffer may be sent to a requesting device without re-retrieving the data from memory.
Claims26
A method of processing requests comprising:
- storing a plurality of requests in a request processing queue in a host/data controller;
- setting a begin flag in a first of the plurality of requests;
- retrieving data from memory, the data corresponding to the first of the plurality of requests;
- storing the data in a hot buffer in the host/data controller;
- for each of the plurality of requests corresponding to the data, delivering the data from the hot buffer to a requesting device without re-retrieving the data from the memory;
- storing subsequent requests in the request processing queue;
- comparing each of the plurality of subsequent requests to the data stored in the hot buffer;
- and
- for each of the plurality of subsequent requests corresponding to the data stored in the hot buffer, delivering the data from the hot buffer to a requesting device.
A method of processing requests comprising:
- transferring requested data sets from a storage location to a host/data controller for each of a plurality of corresponding requests;
- storing each of the requested data sets in a respective buffer in the host/data controller;
- tracking the data sets stored in each of the respective buffers;
- and
- for a subsequent request for a data set currently stored in one of the respective buffers, delivering the data set from the one of the respective buffers to a device initiating the subsequent request, wherein storing comprises implementing a state machine to determine which of the respective buffers will store each of the respective data sets.
A method of processing requests in a system having a host/data controller comprising:
- receiving a first request at a processor controller (PCON);
- delivering the first request from the PCON to each of a tag controller (TCON) and a memory controller (MCON);
- searching the system for data corresponding to the first request;
- storing the data corresponding to the first request in a buffer in the host/data controller;
- setting a begin flag in the buffer, thereby creating a hot buffer;
- and
- directing all subsequent requests for the data to the hot buffer, wherein directing comprises setting a use flag in the subsequent requests for the data.
A host/data controller comprising:
- a plurality of buffers configured to temporarily store data during processing of a first plurality of read requests;
- a first controller electrically coupled to the plurality of buffers and configured to assign a corresponding buffer to each of the corresponding read requests;
- and
- a second controller electrically coupled to the plurality of buffers and configured to receive a second plurality of read requests and further configured to fetch data from the buffers without retrieving the data from an external location with respect to the host/data controller in response to any one of the second plurality of read requests and further configured to retain the fetched data in the buffer until a releasing event occurs.
Dependencies are inferred from the claim text.