CaltechAUTHORS
  A Caltech Library Service

A Compiler Algorithm for Managing Asynchronous Memory Read Completion

Maskit, Daniel (1996) A Compiler Algorithm for Managing Asynchronous Memory Read Completion. California Institute of Technology , Pasadena, CA. (Unpublished) https://resolver.caltech.edu/CaltechCSTR:1996.cs-tr-96-02

[img]
Preview
Postscript - Submitted Version
See Usage Policy.

328kB
[img]
Preview
PDF - Submitted Version
See Usage Policy.

209kB

Use this Persistent URL to link to this item: https://resolver.caltech.edu/CaltechCSTR:1996.cs-tr-96-02

Abstract

Computers with conventional memory systems have a predictable latency between initiation and completion of a memory read. On such machines it is relatively easy for either the compiler or the processor to guarantee that a load has completed before further references to the loaded register are made. In a machine with a logically shared, but physically distributed, memory, these latencies are not statically predictable. Some existing systems, such as the Cray T3D, deal with this problem by using a hardware mechanism to enforce synchronization on a register which is the target of a remote memory access. The M-Machine currently being designed by the Concurrent VLSI Architecture Group at MIT performs remote memory accesses asynchronously, and allows program execution to continue while the access is outstanding, but does not enforce synchronization in hardware. This architectural simplification, and resulting relaxation of memory completion semantics, poses a challenge to the compiler: how can this simpler memory system be efficiently supported while maintaining program correctness. In particular, what is required to guarantee that there are no conflicts between completion of a memory operation by placing a value into a register, and other uses of the register being written. This paper describes a general solution to this problem, develops an algorithm to implement it, and shows that the algorithm is correct.


Item Type:Report or Paper (Technical Report)
Additional Information:© 1996 California Institute of Technology. January 15, 1996. The research described in this report is sponsored primarily by the Advanced Research Projects Agency under contract number DABT63-95-C-0116. The information contained herein does not necessarily reflect the position or policy of the government of the United States, and no official endorsement should be inferred.
Group:Computer Science Technical Reports
Funders:
Funding AgencyGrant Number
Advanced Research Projects Agency (ARPA)DABT63-95-C-0116
DOI:10.7907/Z9Q81B3B
Record Number:CaltechCSTR:1996.cs-tr-96-02
Persistent URL:https://resolver.caltech.edu/CaltechCSTR:1996.cs-tr-96-02
Usage Policy:You are granted permission for individual, educational, research and non-commercial reproduction, distribution, display and performance of this work in any format.
ID Code:26888
Collection:CaltechCSTR
Deposited By: Imported from CaltechCSTR
Deposited On:14 May 2001
Last Modified:03 Oct 2019 03:18

Repository Staff Only: item control page