Programmable stream prefetch with resource optimization
Abstract
A stream prefetch engine performs data retrieval in a parallel computing system. The engine receives a load request from at least one processor. The engine evaluates whether a first memory address requested in the load request is present and valid in a table. The engine checks whether there exists valid data corresponding to the first memory address in an array if the first memory address is present and valid in the table. The engine increments a prefetching depth of a first stream that the first memory address belongs to and fetching a cache line associated with the first memory address from the at least one cache memory device if there is not yet valid data corresponding to the first memory address in the array. The engine determines whether prefetching of additional data is needed for the first stream within its prefetching depth. The engine prefetches the additional data if the prefetching is needed.
- Inventors:
- Issue Date:
- Research Org.:
- International Business Machines Corp., Armonk, NY (United States)
- Sponsoring Org.:
- USDOE
- OSTI Identifier:
- 1082909
- Patent Number(s):
- 8347039
- Application Number:
- 12/684,693
- Assignee:
- International Business Machines Corporation (Armonk, NY)
- Patent Classifications (CPCs):
-
G - PHYSICS G06 - COMPUTING G06F - ELECTRIC DIGITAL DATA PROCESSING
- DOE Contract Number:
- B554331
- Resource Type:
- Patent
- Country of Publication:
- United States
- Language:
- English
- Subject:
- 97 MATHEMATICS AND COMPUTING
Citation Formats
Boyle, Peter, Christ, Norman, Gara, Alan, Mawhinney, Robert, Ohmacht, Martin, and Sugavanam, Krishnan. Programmable stream prefetch with resource optimization. United States: N. p., 2013.
Web.
Boyle, Peter, Christ, Norman, Gara, Alan, Mawhinney, Robert, Ohmacht, Martin, & Sugavanam, Krishnan. Programmable stream prefetch with resource optimization. United States.
Boyle, Peter, Christ, Norman, Gara, Alan, Mawhinney, Robert, Ohmacht, Martin, and Sugavanam, Krishnan. Tue .
"Programmable stream prefetch with resource optimization". United States. https://www.osti.gov/servlets/purl/1082909.
@article{osti_1082909,
title = {Programmable stream prefetch with resource optimization},
author = {Boyle, Peter and Christ, Norman and Gara, Alan and Mawhinney, Robert and Ohmacht, Martin and Sugavanam, Krishnan},
abstractNote = {A stream prefetch engine performs data retrieval in a parallel computing system. The engine receives a load request from at least one processor. The engine evaluates whether a first memory address requested in the load request is present and valid in a table. The engine checks whether there exists valid data corresponding to the first memory address in an array if the first memory address is present and valid in the table. The engine increments a prefetching depth of a first stream that the first memory address belongs to and fetching a cache line associated with the first memory address from the at least one cache memory device if there is not yet valid data corresponding to the first memory address in the array. The engine determines whether prefetching of additional data is needed for the first stream within its prefetching depth. The engine prefetches the additional data if the prefetching is needed.},
doi = {},
journal = {},
number = ,
volume = ,
place = {United States},
year = {Tue Jan 08 00:00:00 EST 2013},
month = {Tue Jan 08 00:00:00 EST 2013}
}
Works referenced in this record:
Dynamic PCI-bus pre-fetch with separate counters for commands of commands of different data-transfer lengths
patent, September 2006
- Chen, Baohua; Wong, Kimchung Arthur; Zhou, Zhinan
- US Patent Document 7,107,384
Asyncronous Broadcast for Ordered Delivery Between Compute Nodes in a Parallel Computing System Where Packet Header Space is Limited
patent-application, January 2009
- Kumar, Sameer
- US Patent Application 11/768619; 20090003344
Data processing system and method with prefetch buffers
patent, May 1994
- Jouppi, Norman Paul
- US Patent Document 5,317,718