Browse Prior Art Database

Mirrored Mainstore for Firmly Coupled Multi-Processor Systems

IP.com Disclosure Number: IPCOM000111616D
Original Publication Date: 1994-Mar-01
Included in the Prior Art Database: 2005-Mar-26
Document File: 2 page(s) / 48K

Publishing Venue

IBM

Related People

Hoover, RD: AUTHOR [+2]

Abstract

This article describes a method of duplicating (mirroring) a portion of the real address space of a shared memory firmly coupled multi processor system. This mirrored memory is useful for high usage, mostly read-only data and code. Any fetch to the mirrored memory is a local on-node fetch.

This text was extracted from an ASCII text file.
This is the abbreviated version, containing approximately 74% of the total text.

Mirrored Mainstore for Firmly Coupled Multi-Processor Systems

      This article describes a method of duplicating (mirroring) a
portion of the real address space of a shared memory firmly coupled
multi processor system.  This mirrored memory is useful for high
usage, mostly read-only data and code.  Any fetch to the mirrored
memory is a local on-node fetch.

      One must allocate part of the real memory of each node to the
same real address in each node that contains the address space of the
kernel code.   Therefore, in each node there is a copy of the same
real address space.  Each copy must be identical (during updates the
coherency or locking protocols guarantee atomicity).  A fetch on any
node to this address space results in an on-node fetch.  A store to
this area results in a store to the same address on all nodes of the
system.

      It is easy to see that fetches to this mirrored area are fast.
Stores are slow because they must propagate to all nodes.  However,
they are asynchronous, and the processor can continue to run.  The
system does need sufficient bandwidth to handle stores to the
mirrored area.  It is useful to avoid stores to the mirrored area.
This area is also valuable for relatively constant system variables.

      The memory for the mirrored area could be a separate memory
dedicated to it, or it could be a portion of mainstore that is
relocated from the real address space of the node and dynamically
reassigned to the mirro...