SISD (Single Instruction, Single
Data)
Se refiere a las
computadoras convencionales de Von Neuman. Ejemplo: PC’s.
En la categoría SISD están
la gran mayoría de las computadoras existentes. Son equipos con un solo
procesador que trabaja sobre un solo dato a la vez. A estos equipos se les
llama también computadoras secuenciales.
SIMD
(Single Instruction, Multiple Data)
Arreglo de procesadores.
Cada procesador sigue el mismo conjunto de instrucciones; diferentes elementos
de información son asignados a cada procesador. Utilizan memoria distribuida.
Típicamente tienen miles procesadores simples. Son utilizadas en redes
neuronales.
Las computadoras SIMD tienen
una sola unidad de control y múltiples unidades funcionales. La unidad de
control se encarga de enviar la misma instrucción a todas las unidades
funcionales. Cada unidad funcional trabaja sobre datos diferentes. Estos
equipos son de propósito específico, es decir, son apropiados para ciertas
aplicaciones particulares, como por ejemplo el procesamiento de imágenes.
MIMD (Multiple Instruction, Multiple Data)
Múltiples computadoras y multiprocesadores. Las piezas de
código distribuidas entre los procesadores. Los procesadores pueden ejecutar la
misma o instrucción o diferentes instrucciones. Se puede decir que MIMD es un
super conjunto de SIMD.
Diferentes elementos de información se asignan a
diferentes procesadores. Pueden tener memoria distribuida o compartida.
Cada procesador MIMD corre casi independientemente de los
otros.
Las computadoras MIMD pueden ser utilizadas en
aplicaciones con información en paralelo o con tareas en paralelo.
En la categoría MIMD están los equipos con varios
procesadores completos. Cada procesador tiene su propia unidad de control y su
propia unidad funcional. Esta categoría incluye varios subgrupos: Equipos de
memoria compartida, equipos de memoria distribuida y redes de computadores. Los
equipos MIMD son de propósito general.
Ejemplos:
o SGI/Cray Power
Challenge Array
o SGI/Cray Origin-2000
o HP/Convex SPP-2000
MISD
(Multiple Instruction, Single Data)
No son usadas, y no son significativas.
Es un tipo de arquitectura computacional(particularmente
de computación paralela) donde muchas
unidades funcionales realizan diferentes operaciones en los mismos datos. Las
arquitecturas segmentadas pertenecen a este tipo,
aunque en un extremo se podría llegar a decir que los datos son diferentes
después de ser procesados por cada etapa en el pipeline,
con lo cual no entraría en esta categoría.
Las máquinas tolerantes a fallos ejecutan la misma
instrucción redundantemente para detectar y corregir errores, utilizando task
replication, son consideradas de este tipo. No existen muchos
ejemplos de esta arquitecura dado que las técnicas más comunes de procesamiento
de datos en paralelo suelen ser más apropiadas para MIMD y SIMD. Específicamente,
facilitan el escalamiento y el uso de recursos computacionales mejor que MISD.
Procesador
Vectorial
Las características principales de los
procesadores vectoriales son:
· La
capacidad de aplicar una instrucción a un conjunto de datos, en otras palabras
un vector, de una sola vez. Los procesadores vectoriales consiguen esto a
través de las áreas en la memoria especialmente diseñadas llamadas registros
vectoriales los cuales pueden ser llenados con las instrucciones vectoriales,
devolviendo resultados mucho más rápidos que los tradicionales procesadores
escalares.
· Unidades
de función profundamente encauzadas para alto rendimiento total, ciclos de
reloj muy cortos.
· Abundancia
de registros vectoriales largos para alimentar las unidades de función y
recibir los resultados.
· Rutas
de transferencia de datos de gran ancho de banda entre memoria y registros
vectoriales.
Multiprocesador
(UMA,COMA,NUMA)
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.
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.
Multicomputadoras
Los sistemas de memoria distribuida o
multicomputadoras pueden ser de dos tipos básicos. El primer de ellos consta de
un único computador con múltiples CPUs comunicadas por un bus de datos mientras
que en el segundo se utilizan múltiples computadores, cada uno con su propio
procesador, enlazados por una red de interconexión más o menos rápida.
Sobre los sistemas de multicomputadoras de memoria
distribuida, se simula memorias compartidas. Se usan los mecanismos de
comunicación y sincronización de sistemas multiprocesadores.
Un clúster es un tipo de arquitectura paralela
distribuida que consiste de un conjunto de computadores independientes
interconectados operando de forma conjunta como único recurso computacional sin
embargo, cada computador puede utilizarse de forma independiente o separada.
En esta arquitectura, el computador paralelo es
esencialmente una colección de procesadores secuenciales, cada uno con su
propia memoria local, que pueden trabajar conjuntamente.
· Cada nodo
tiene rápido acceso a su propia memoria y acceso a la memoria de otros nodos
mediante una red de comunicaciones, habitualmente una red de comunicaciones de
alta velocidad.
· Los datos
son intercambiados entre los nodos como mensajes a través de la red.
·Una red
de ordenadores, especialmente si disponen de una interconexión de alta
velocidad, puede ser vista como una multicomputadora de memoria distribuida y
como tal ser utilizada para resolver problemas mediante computación paralela.
Una arquitectura y un paradigma aplicables a la computación en paralelo.
Los algoritmos paralelos sistólicos exhiben un flujo direccional por el cual
los datos se dividen y quedan en cola para pasar por iguales secuencias de
procesamiento al moverse de un proceso al siguiente. La metáfora del flujo de
sangre ha servido para caracterizar el flujo de datos a lo largo del proceso.
No hay comentarios:
Publicar un comentario