Introduction

Home Introduction People System Info Publications Links Search

What's DSM?

DSM or Distributed Shared Memory is one of the most attractive approaches for building large-scale high-performance multiprocessor systems. DSM can provide an abstraction of shared memory environment to cluster or network of workstations (NOWs) using messages to provide a memory consistency on top of these physically distributed memory, as shown in the figure.

dsmabs.gif (5629 bytes)

How to classify a DSM System?

The DSM systems can be classified according to:

(1) the DSM algorithm;
SRSW (single reader/single writer);
MRSW (multiple reader/single writer);
MRMW (multiple reader/multiple writer);
(2) the level of DSM mechanism implementation;
Hardware;
Software;
Hybrid (Hardware+Software);
(3) memory consistency model
strict consistency;
sequential consistency;
processor consistency;
weak consistency;
release consistency;
lazy release consistency;
scope consistency;
entry consistency.

What's Brazos?

Brazos is a software DSM system developed by members of the the Electrical and Computer Engineering Department at Rice University. Brazos is a software implemented system to x86 servers running Windows NT operational system. Brazos is different to other systems mainly in four ways:

(1) is multithreaded in order to take advantage of local processors;
(2) uses selective multicast to reduce the number of messages;
(3) selects the coherence protocol adaptively at runtime, and;
(4) uses software scope consistency to reduce false sharing.

More information can be obtained at http://www-brazos.rice.edu/brazos/.

We also have here some Mini-HowTos:

How To use Brazos SW-DSM on Spade-II ? (In English and Portuguese)
How To modify C programs to run on Brazos ? (Only in English)

What's the purpose of this project?

The main purposes of this project are:

(1) evaluate the Brazos System with regard to different configurations of communication network: broadcast Fast Ethernet, switched Fast Ethernet and ELAN-ATM;
(2) modify Brazos to run under different network interfaces as Myrinet and native ATM;
(3) development of new applications that takes advantage of shared memory;
(4) development of tools (for management and monitoring) that helps the developer;
(5) provide support for OpenMP;
(6) provide support for GM and VIA for Myrinet, and;
(7) provide security mechanisms.
Back to Top

Copyright © 1999, LSI-EPUSP.  All rights reserved.
For problems, questions or suggestions regarding this web site, please contact [ammatsun@lsi.usp.br].
Last updated: Setembro 10, 1999.