DOE Patents title logo U.S. Department of Energy
Office of Scientific and Technical Information

Title: Low latency memory access and synchronization

Abstract

A low latency memory system access is provided in association with a weakly-ordered multiprocessor system. Bach processor in the multiprocessor shares resources, and each shared resource has an associated lock within a locking device that provides support for synchronization between the multiple processors in the multiprocessor and the orderly sharing of the resources. A processor only has permission to access a resource when it owns the lock associated with that resource, and an attempt by a processor to own a lock requires only a single load operation, rather than a traditional atomic load followed by store, such that the processor only performs a read operation and the hardware locking device performs a subsequent write operation rather than the processor. A simple prefetching for non-contiguous data structures is also disclosed. A memory line is redefined so that in addition to the normal physical memory data, every line includes a pointer that is large enough to point to any other line in the memory, wherein the pointers to determine which memory line to prefetch rather than some other predictive algorithm. This enables hardware to effectively prefetch memory access patterns that are non-contiguous, but repetitive.

Inventors:
 [1];  [2];  [3];  [4];  [5];  [6];  [7];  [8];  [4];  [9];  [10]
  1. Ridgefield, CT
  2. Croton On Hudson, NY
  3. Yorktown Heights, NY
  4. Mount Kisco, NY
  5. Irvington, NY
  6. Cortlandt Manor, NY
  7. Ossining, NY
  8. Brewster, NY
  9. (Mount Kisco, NY), Vranas
  10. Bedford Hills, NY
Issue Date:
Research Org.:
International Business Machines Corp., Armonk, NY (United States)
Sponsoring Org.:
USDOE
OSTI Identifier:
1016023
Patent Number(s):
7818514
Application Number:
12/196,796
Assignee:
International Business Machines Corporation (Armonk, NY)
Patent Classifications (CPCs):
G - PHYSICS G06 - COMPUTING G06F - ELECTRIC DIGITAL DATA PROCESSING
DOE Contract Number:  
W-7405-ENG-48
Resource Type:
Patent
Country of Publication:
United States
Language:
English

Citation Formats

Blumrich, Matthias A, Chen, Dong, Coteus, Paul W, Gara, Alan G, Giampapa, Mark E, Heidelberger, Philip, Hoenicke, Dirk, Ohmacht, Martin, Steinmacher-Burow, Burkhard D, Takken, Todd E., and Pavlos, M. Low latency memory access and synchronization. United States: N. p., 2010. Web.
Blumrich, Matthias A, Chen, Dong, Coteus, Paul W, Gara, Alan G, Giampapa, Mark E, Heidelberger, Philip, Hoenicke, Dirk, Ohmacht, Martin, Steinmacher-Burow, Burkhard D, Takken, Todd E., & Pavlos, M. Low latency memory access and synchronization. United States.
Blumrich, Matthias A, Chen, Dong, Coteus, Paul W, Gara, Alan G, Giampapa, Mark E, Heidelberger, Philip, Hoenicke, Dirk, Ohmacht, Martin, Steinmacher-Burow, Burkhard D, Takken, Todd E., and Pavlos, M. Tue . "Low latency memory access and synchronization". United States. https://www.osti.gov/servlets/purl/1016023.
@article{osti_1016023,
title = {Low latency memory access and synchronization},
author = {Blumrich, Matthias A and Chen, Dong and Coteus, Paul W and Gara, Alan G and Giampapa, Mark E and Heidelberger, Philip and Hoenicke, Dirk and Ohmacht, Martin and Steinmacher-Burow, Burkhard D and Takken, Todd E. and Pavlos, M},
abstractNote = {A low latency memory system access is provided in association with a weakly-ordered multiprocessor system. Bach processor in the multiprocessor shares resources, and each shared resource has an associated lock within a locking device that provides support for synchronization between the multiple processors in the multiprocessor and the orderly sharing of the resources. A processor only has permission to access a resource when it owns the lock associated with that resource, and an attempt by a processor to own a lock requires only a single load operation, rather than a traditional atomic load followed by store, such that the processor only performs a read operation and the hardware locking device performs a subsequent write operation rather than the processor. A simple prefetching for non-contiguous data structures is also disclosed. A memory line is redefined so that in addition to the normal physical memory data, every line includes a pointer that is large enough to point to any other line in the memory, wherein the pointers to determine which memory line to prefetch rather than some other predictive algorithm. This enables hardware to effectively prefetch memory access patterns that are non-contiguous, but repetitive.},
doi = {},
journal = {},
number = ,
volume = ,
place = {United States},
year = {Tue Oct 19 00:00:00 EDT 2010},
month = {Tue Oct 19 00:00:00 EDT 2010}
}

Works referenced in this record:

Compiler-based prefetching for recursive data structures
journal, September 1996


A prefetching technique for irregular accesses to linked data structures
conference, January 1999

  • Karlsson, M.; Dahlgren, F.; Stenstrom, P.
  • HPCA: 6th International Symposium on High-Performance Computer Architecutre, Proceedings Sixth International Symposium on High-Performance Computer Architecture. HPCA-6 (Cat. No.PR00550)
  • https://doi.org/10.1109/HPCA.2000.824351

Effective jump-pointer prefetching for linked data structures
journal, May 1999