2. Concepto de
multiprocesador
Dos o más procesos de capacidades
comparables.
Cooperación en la ejecución de una
tarea.
Bajo el control de un unico sistema
operativo
3. Granularidad del
paralelismo
Los procesos necesitan comunicarse y sincronizarse
! sobrecarga que disminuye
las prestaciones.
Granularidad: Numero ´ medio de instrucciones
ejecutadas entre dos operaciones de
comunicación.
Fino: Tarea repartida entre muchos procesadores.
Menor tamaño de cada proceso.
Mayor numero de operaciones de comunicación.
Grueso: Tarea repartida entre pocos procesadores.
Mayor tamaño de cada proceso.
Menor numero de operaciones de comunicación.
4. Clasificación de los
multiprocesadores
Criterio: Modelo de comunicación entre los procesos.
Variables compartidas.
Paso de mensajes.
Criterio: Arquitectura de la memoria
Memoria compartida.
Memoria distribuida.
Juntando ambos criterios:
Multiprocesadores de memoria compartida centralizada:
Variables compartidas + memoria compartida.
Multiprocesadores de memoria compartida distribuida:
Variables compartidas + memoria distribuida.
Multicomputadores, Clusters de PCs:
Paso de mensajes + memoria distribuida.
5. MPs de memória compartida
centralizada
Compartida por todos los procesadores, y accesible
desde cualquiera.
! también llamados multiprocesadores simétricos:
Symmetric (shared mem-ory) Multiprocessors.
Descompuesta en varios módulos, para permitir el acceso
concurrente de varios procesadores.
Cada procesador debe tener un espacio de
direccionamiento suficientemente
amplio como para poder direccionarla completamente.
El tiempo de acceso a memoria es el mismo,
independientemente del par
procesador memoria que intervenga.
! también llamadas arquitecturas UMA: Uniform Memory
Access.
6. Redes de Inter conexión
Dinámicas
Han surgido dos filosofías en las redes
• Redes dinámicas (indirectas)
– Aleja los conmutadores (switches) de los procesadores y
los centraliza en agrupaciones configurables
dinámicamente, para amoldarse a los requerimientos de
comunicaciones de las aplicaciones
7. Redes de interconexión
dinámicas (indirecta)
– Típicamente usadas para NUMA
– Los switches se alejan del procesador
– El camino entre un procesador y otro, se
realiza a
través de varios switches
– Los tipos más comunes son:
• Red de barras cruzadas (CrossBar)
• Red basada en Bus común
• Árboles
• Red multietapa
8. Redes de medios compartidos
Indirectamente el tipo de conexión que se haga en la
capa física puede influir en el diseño de la capa de
Enlace. Atendiendo al número de equipos que
comparten un medio hay dos posibilidades:
Conexiones punto a punto: que se establecen
entre dos equipos y que no admiten ser compartidas
por terceros
Conexiones multipunto: en las que dos o más
equipos pueden usar el medio.
Así por ejemplo la fibra óptica no permite fácilmente
conexiones multipunto y por el contrario las
conexiones inalámbricas son inherentemente
multipunto. Hay topologías como el anillo, que
permiten conectar muchas máquinas a partir de una
serie de conexiones punto a punto.
9. Redes de con mutadas
Consisten en un conjunto de nodos interconectados entre sí, a través de
medios de transmisión (cables), formando la mayoría de las veces una
topología mallada, donde la información se transfiere encaminándola del
nodo de origen al nodo destino mediante conmutación entre nodos
intermedios. Una transmisión de este tipo tiene 3 fases :
Establecimiento de la conexión.
Transferencia de la información.
Liberación de la conexión.
Se entiende por conmutación en un nodo, a la conexión física o lógica, de
un camino de entrada al nodo con un camino de salida del nodo, con el fin
de transferir la información que llegue por el primer camino al segundo. Un
ejemplo de redes conmutadas son las redes de área extensa.
10. Las redes conmutadas se dividen en :
Conmutación de paquetes.
Conmutación de circuitos.
CONMUTACIÓN DE PAQUETES
Se trata del procedimiento mediante el cual, cuando un nodo quiere enviar
información a otro, la divide en paquetes. Cada paquete es enviado por el
medio con información de cabecera. En cada nodo intermedio por el que pasa
el paquete se detiene el tiempo necesario para procesarlo.
CONMUTACIÓN DE CIRCUITOS
Es el procedimiento por el que dos nodos se conectan, permitiendo la utilización
de forma exclusiva del circuito físico durante la transmisión. En cada nodo
intermedio de la red se cierra un circuito físico entre un cable de entrada y una
salida de la red. La red telefónica es un ejemplo de conmutación de circuitos.
11. Coherencia de caché
La coherencia de cache hace referencia a la integridad de los datos
almacenados en las caches locales de los recursos compartidos. La coherencia
de la cache es un caso especial de la coherencia de memoria.
Modelos de coherencia
Varios modelos y protocolos han sido desarrollados para mantener la
coherencia de la cache, tales como protocolo MSI, protocolo MESI, protocolo
MOSI y el protocolo MOESI. La elección de un modelo de consistencia es
crucial a la hora de diseñar un sistema de cache coherente. Los modelos de
coherencia difieren en rendimiento y escalabilidad, por lo que deben ser
evaluados para cada sistema diseñado.
Múltiples caches con recursos comunes.