MULTIPROCESADORES

Un multiprocesador puede verse como un computador paralelo compuesto por varios procesadores interconectados que comparten un mismo sistema de memoria. Los sistemas multiprocesadores son arquitecturas MIMD con memoria compartida. Tienen un único espacio de direcciones para todos los procesadores y los mecanismos de comunicación se basan en el paso de mensajes desde el punto de vista del programador.


Dado que los multiprocesadores comparten diferentes módulos de memoria, pudiendo acceder a un mismo módulo varios procesadores, a los multiprocesadores también se les llama sistemas de memoria compartida. Dependiendo de la forma en que los procesadores comparten la memoria, se clasifican en sistemas multiprocesador UMA, NUMA y COMA.



  • Sistemas UMA (Uniform Memory Access)

    Sistema multiprocesador con acceso uniforme a memoria. La memoria física es uniformemente compartida por todos los procesadores, esto quiere decir que todos los procesadores tienen el mismo tiempo de acceso a todas las palabras de la memoria. Cada procesador tiene su propia caché privada y también se comparten los periféricos. Los multiprocesadores son sistemas fuertemente acoplados (tightly-coupled), dado el alto grado de compartición de los recursos (hardware o software) y el alto nivel de interacción entre procesadores, lo que hace que un procesador dependa de lo que hace otro.


  • Sistemas NUMA (Non Uniform Memory Access)

    Un sistema multiprocesador NUMA es un sistema de memoria compartida donde el tiempo de acceso varía según donde se encuentre localizado el acceso.
    El acceso a memoria, por tanto, no es uniforme para diferentes procesadores. Existen memorias locales asociadas a cada procesador y estos pueden acceder a datos de su memoria local de una manera más rápida que a las memorias de otros procesadores, debido a que primero debe aceptarse dicho acceso por el procesador del que depende el módulo de memoria local. Todas las memorias locales conforman la memoria global compartida y físicamente distribuida y accesible por todos los procesadores.


  • Sistemas COMA (Cache Only Memory Access)

    Los sistemas COMA son un caso especial de los sistemas NUMA. Este tipo de sistemas no ha tenido mucha transcendencia. Las memorias distribuidas son memorias cachés, por este motivo es un sistema muy restringido en cuanto a la capacidad de memoria global. No hay jerarquía de memoria en cada módulo procesador. Todas las cachés forman un mismo espacio global de direcciones. El acceso a las cachés remotas se realiza a través de los directorios distribuidos de las cachés. Dependiendo de la red de interconexión utilizada, se pueden utilizar jerarquías en los directorios para ayudar a la localización de copias de bloques de caché.

3 comentarios:

Gerardo Roa dijo...

Existen dos modelos arquitectónicos diferentes para los sistemas multiprocesadores: Fuertemente acoplado y Débilmente acoplado. Los sistemas fuertemente acoplados se comunican a través de una memoria común.
De allí que el promedio de velocidad con la cual un procesador puede comunicarse con otro es del orden del bandwidth de la memoria.
Puede existir una pequeña memoria local o un buffer de alta velocidad (cache) en cada procesador.
Existe una completa conectividad entre los procesadores y la memoria. Esta conectividad puede alcanzarse insertando una red de interconexión entre los procesadores y la memoria; o mediante una memoria multipuertas.
Uno de los factores que limitan el crecimiento de los sistemas fuertemente acoplados es la egradación debido a la contención de memoria que ocurre cuando dos o más procesadores intentan acceder la misma unidad de memoria concurrentemente.
Puede reducirse el grado de conflictividad incrementando el grado de interleaving. Sin embargo, esto debe acompañarse de una cuidadosa asignación de los datos a los módulos de memoria.
Los sistemas multiprocesadores débilmente acoplados no tienen, en general, el grado de conflictos sobre la memoria de los fuertemente acoplados.
En este sistema cada procesador tiene un conjunto de dispositivos de E/S y una gran memoria local a
donde accede para obtener la mayoría de sus datos e instrucciones.
Nos referiremos al procesador, sus dispositivos de E/S y su memoria local como al módulo computador.
Los procesos que se ejecutan en diferentes procesadores se comunican intercambiando mensajes a través de un sistema de transferencia de mensajes. El grado de acoplamiento en tales sistemas es realmente muy débil, de allí que se los conozca también como sistemas distribuidos.
El factor determinante del grado de acoplamiento es la topología de la comunicación del sistema de transferencia de mensajes asociado.
Los sistemas débilmente acoplados son eficientes cuando la interacción entre las tareas es mínima.
Los sistemas fuertemente acoplados pueden soportar una gran interacción entre las tareas sin un deterioro significativo de la performance.

Gerardo Roa dijo...

Hola. Bueno Chao...

Unknown dijo...

Existen similitudes entre los sistemas multiprocesadores y multicomputadores debido a que ambos fueron
pensados con un mismo objetivo: dar soporte a operaciones concurrentes en el sistema. Sin embargo, existen
diferencias importantes basadas en el alcance de los recursos compartidos y la cooperación en la solución de un
problema.
Un sistema multicomputador consiste de diversas computadoras autónomas que pueden o no comunicarse
entre sí.
Un sistema multiprocesador está controlado por un sistema operativo que provee la interacción entre los
procesadores y sus programas a nivel de dato, proceso y archivo.
Atte: Gabriela León