Conceptos de Hardware

Todos los sistemas distribuidos constan de varias CPU organizadas de diversas formas.   De acuerdo a Tanenbaum se pueden analizar conforme a:

Existen diversos esquemas de clasificación para los sistemas de cómputo con varias  CPU:

SISD (Single Instruction Single Data: un flujo de instrucciones y un flujo de datos):

SIMD (Single Instruction Multiple Data: un flujo de instrucciones y varios flujos de datos):

MISD (Multiple Instruction Single Data: un flujo de varias instrucciones y un solo flujo de datos):

MIMD (Multiple Instruction Multiple Data: un grupo de computadoras independientes, cada una con su propio contador del programa, programa y datos):

Un avance sobre la clasificación de Flynn incluye la división de las computadoras MIMD en dos grupos:

Cada una de las categorías indicadas se puede clasificar según la arquitectura de la red de interconexión en:

 

 

Generalmente los multiprocesadores están más fuertemente acoplados que las multicomputadoras.

 

Multiprocesadores con Base en Buses

Constan de cierto número de CPU’s conectadas a un bus común, junto con un módulo de memoria, de acuerdo a Tanenbaum:

Multiprocesadores con base en un bus.

Un bus típico posee al menos:

Todos los elementos precedentes operan en paralelo.

Para leer una palabra de memoria, una CPU:

Para grabar el procedimiento es similar.

Solo existe una memoria, la cual presenta la propiedad de la coherencia:

El problema de este esquema es que el bus tiende a sobrecargarse y el rendimiento a disminuir drásticamente; la solución es añadir una memoria caché de alta velocidad entre la CPU y el bus:

Un importante problema debido al uso de cachés es el de la “incoherencia de la memoria”:

Una solución consiste en lo siguiente:

Si todos los cachés realizan un monitoreo constante del bus:

Un diseño con cachés monitores y de escritura es coherente e invisible para el programador, por lo que es muy utilizado en multiprocesadores basados en buses.

 

Multiprocesadores con Conmutador

El esquema de multiprocesadores con base en buses resulta apropiado para hasta aproximadamente 64 procesadores.

Para superar esta cifra es necesario un método distinto de conexión entre procesadores (CPU) y memoria.

Una posibilidad es dividir la memoria en módulos y conectarlos a las CPU con un “conmutador de cruceta” (cross-bar switch):


Conmutador de cruceta.

El número de conmutadores del esquema anterior puede resultar prohibitivo:


Red omega de conmutación.

 

n

log 2 n

n * log 2 n

n * n

50

5,64385619

282

2.500

75

6,22881869

467

5.625

100

6,64385619

664

10.000

125

6,96578428

871

15.625

150

7,22881869

1.084

22.500

175

7,45121111

1.304

30.625

200

7,64385619

1.529

40.000

1.024

10

10.240

1.048.576

Tabla 7.1: Conmutador de cruceta versus red omega.

Conmutador de cruceta versus red omega.

Un problema importante en la red omega es el retraso:

Otra posible solución son los esquemas según sistemas jerárquicos:



Multicomputadoras con Base en Buses

Es un esquema sin memoria compartida.

Cada CPU tiene una conexión directa con su propia memoria local.

Un problema importante es la forma en que las CPU se comuniquen entre sí.

El tráfico es solo entre una CPU y otra; el volumen de tráfico será varios órdenes de magnitud menor que si se utilizara la red de interconexión para el tráfico CPU- memoria.

Topológicamente es un esquema similar al del multiprocesador basado en un bus.

Consiste generalmente en una colección de estaciones de trabajo en una LAN (red de área local) (ver Figura 7.5).

Multicomputadora que consta de estaciones de trabajo en una LAN.

 

Multicomputadoras con Conmutador

Cada CPU tiene acceso directo y exclusivo a su propia memoria .  Existen diversas topologías, las más comunes son la retícula y el hipercubo.

Las principales características de las retículas son:


Retícula.

Las principales características del hipercubo son:


Hipercubo de dimensión 4.

 

Hosted by www.Geocities.ws

1