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