Multiprocesadores y Sistemas Distribuidos

Anuncio
Sistemas de Computación
Multiprocesadores
distribuido.
y
procesamiento
-
.
Este capítulo tiene relación con la forma de como el
hardware se interconecta1.
Con la experiencia de los años se han propuesto
diversos esquemas de clasificación para los sistemas computadores con varias cpu, pero la taxonomía propuesta por Flynn2 tal vez sea la mas citada.
-
Flynn eligió dos características consideradas por
él como esenciales:
. el número de flujos de instrucciones y
. el número de flujos de datos
-
SISD Single Instruction Single Data es aquella
que tiene un solo flujo de instrucciones y un flujo
de datos. Todas las computadoras de un solo
procesador caen en esta categoría.
-
SIMD Single Instruction Multiple Data se refiere a
dar ordenes a los procesadores con una unidad
de instrucción que busca una instrucción y
después instruya a varias unidades de datos
para que la lleven a cabo en paralelo, cada una
con sus propios datos. Están en esta categoría
los supercomputadores vectoriales.
-
-
-
.
-
MIMD Múltiple Instruction Multiple Data se refiere
a un grupo de computadores cada uno con su
propio contador de programa, programa y datos.
Todos los sistemas de redes son MIMD.
2
[Tane93] Andrew S. Tanenbaum; Sistemas
Operativos Modernos; Prentice Hall
Hispanoamericana, 1993; parte 2.
[Flyn72] M. J. Flynn; “Some Computer
Organizations and their effectiveness” IEE Trans.
on Computer, vol. C-21, pp 948-960, Sept. 1972.
1/2000
débilmente acoplados : gran retraso entre
máquinas y baja tasa de transmisión de datos.
- sistemas de redes
a Multiprocesadores conectados por buses.
CPU
CPU
CPU
caché
caché
caché
memoria
bus
-
-
1
bus : existe una sola red de base o columna
vertebral, análoga a la red de la televisión por
cable a la cual todos los suscriptores se conectan.
conmutador : con cables individuales de una
maquina a otra, con varios patrones diferentes de cableado, análogo al sistema de teléfonos conmutados.
otra dimensión de esta taxonomía es que, en
ciertos sistemas, las máquinas están fuertemente acopladas y en otras están débilmente acopladas.
. fuertemente acopladas : el retraso que se
experimenta al enviar un mensaje de un
computador a otro es corto y la tasa de
transmisión de datos es alta.
- sistemas paralelos
.
MISD Múltiple Instruction Single Data, ninguna
de las computadoras actuales se ajusta a este
modelo.
Según Tanenbaum [Tane93] es conveniente
avanzar respecto de las definiciones anteriores,
dividiendo las MIMD en dos grupos:
. Multiprocesadores : con memoria compartida, con un sólo espacio de direcciones virtuales, compartido por todas las cpu.
. Multicomputadores : con memoria local, cada máquina tiene su propia memoria particular, ejemplo una colección de computadores
en una red.
Esta categorías a su vez, se pueden dividir según su arquitectura de la red de interconexión :
bus y conmutador
-
-
consta de una cierta cantidad de CPU conectadas a un bus común, junto con un módulo de
memoria.
a medida que aumenta la cantidad de CPU, aumentará la probabilidad de colisiones por accesos a memoria, disminuyendo el rendimiento del
sistema, aunque la memoria compartida es
coherente.
una solución es colocar memorias cache en
cada CPU, que almacenen las últimas palabras
accesadas.
con tamaños de 1 MB en la cache, la tasa de
encuentros es del orden del 90%, pero con problemas de incoherencia de memoria.
una de las soluciones planteadas es colocar una
cache de escritura, es decir, que cuando se lee
pág.: 1 de 2
Sistemas de Computación
-
-
en la cache, no se provoca tráfico en la red, pero
si se escribe en la cache, entonces si se causa
tráfico en la red para actualizar la memoria
principal.
otra de las soluciones es el monitoreo del bus,
cada vez que un caché observa una escritura a
una dirección de memoria presente en él, pueda
eliminarlo o actualizarlo con el nuevo valor.
usado con 32 y hasta 64 procesadores en el bus.
d. multicomputadores con conmutador
-
la conexión es a través de tarjetas de conmutación, no de una red.
un ejemplo es un switch ethernet.
b. multiprocesadores con conmutador.
-
para conectar mas de 64 procesadores, es necesario un método diferente de conexión.
la memoria se divide en módulos y se conectan
a las CPU a través de un crossbar switch.
en cada intersección esta un crosspoint switch
electrónico.
puede existir acceso en paralelo a diversos módulos de memoria
M
M
M
M
C
C
M
C
C
M
C
C
M
C
C
M
conmutador
red omega
c multicomputadores conectadas por buses
-
no hay memoria compartida.
para la comunicación entre CPU se requiere un
esquema de interconexión.
el volumen de tráfico será bastante menor que el
de una red para el tráfico cpu-memoria.
basta con una velocidad de 10 - 100 Mbps, en
comparación con la velocidad de 300 Mbps requerida entre cpu-memoria.
Estaciones de trabajo
Memoria
local
CPU
Memoria
local
CPU
Memoria
local
CPU
Red
1/2000
pág.: 2 de 2
Descargar