Arquitectura informática | Taxonomía de Flynn

La computación paralela es una computación en la que los trabajos se dividen en partes discretas que se pueden ejecutar simultáneamente. Cada parte se divide en una serie de instrucciones. Las instrucciones de cada parte se ejecutan simultáneamente en diferentes CPU. Los sistemas paralelos se ocupan del uso simultáneo de múltiples recursos informáticos que pueden incluir una sola computadora con múltiples procesadores, varias computadoras conectadas por una red para formar un grupo de procesamiento paralelo o una combinación de ambos.
Los sistemas paralelos son más difíciles de programar que las computadoras con un solo procesador porque la arquitectura de las computadoras paralelas varía en consecuencia y los procesos de varias CPU deben coordinarse y sincronizarse.

El quid del procesamiento paralelo son las CPU. Según la cantidad de instrucciones y flujos de datos que se pueden procesar simultáneamente, los sistemas informáticos se clasifican en cuatro categorías principales:

Clasificación de Flynn –

  1. Sistemas de instrucción única, datos únicos (SISD):
    un sistema informático SISD es una máquina monoprocesador que es capaz de ejecutar una instrucción única, operando en un flujo de datos único. En SISD, las instrucciones de la máquina se procesan de manera secuencial y las computadoras que adoptan este modelo se denominan popularmente computadoras secuenciales. La mayoría de las computadoras convencionales tienen arquitectura SISD. Todas las instrucciones y datos a procesar deben almacenarse en la memoria primaria.

    La velocidad del elemento de procesamiento en el modelo SISD está limitada (depende) por la velocidad a la que la computadora puede transferir información internamente. Los sistemas SISD representativos dominantes son las estaciones de trabajo IBM PC.

  2. Sistemas de instrucción única, datos múltiples (SIMD):
    un sistema SIMD es una máquina multiprocesador capaz de ejecutar la misma instrucción en todas las CPU pero operando en diferentes flujos de datos. Las máquinas basadas en un modelo SIMD se adaptan bien a la computación científica, ya que involucran muchas operaciones vectoriales y matriciales. Para que la información se pueda pasar a todos los elementos de procesamiento (PE), los elementos de datos organizados de los vectores se pueden dividir en conjuntos múltiples (N-conjuntos para sistemas NPE) y cada PE puede procesar un conjunto de datos.

    Los sistemas SIMD representativos dominantes son la máquina de procesamiento de vectores de Cray.

  3. Sistemas de instrucciones múltiples y datos únicos (MISD):
    un sistema informático MISD es una máquina multiprocesador capaz de ejecutar diferentes instrucciones en diferentes PE, pero todas funcionan en el mismo conjunto de datos.

    Ejemplo Z = sin(x)+cos(x)+tan(x)
    El sistema realiza diferentes operaciones en el mismo conjunto de datos. Las máquinas construidas con el modelo MISD no son útiles en la mayoría de las aplicaciones, se construyen algunas máquinas, pero ninguna de ellas está disponible comercialmente.

  4. Sistemas de múltiples instrucciones y múltiples datos (MIMD):
    un sistema MIMD es una máquina multiprocesador que es capaz de ejecutar múltiples instrucciones en múltiples conjuntos de datos. Cada PE en el modelo MIMD tiene instrucciones y flujos de datos separados; por lo tanto, las máquinas construidas con este modelo son aptas para cualquier tipo de aplicación. A diferencia de las máquinas SIMD y MISD, los PE en las máquinas MIMD funcionan de forma asíncrona.

    Las máquinas MIMD se clasifican ampliamente en MIMD de memoria compartida y MIMD de memoria distribuida en función de la forma en que los PE se acoplan a la memoria principal.

    En el modelo MIMD de memoria compartida (sistemas multiprocesador fuertemente acoplados), todos los PE están conectados a una única memoria global y todos tienen acceso a ella. La comunicación entre los PE en este modelo tiene lugar a través de la memoria compartida, la modificación de los datos almacenados en la memoria global por un PE es visible para todos los demás PE. Los sistemas MIMD de memoria compartida representativos dominantes son las máquinas Silicon Graphics y SMP (Symmetric Multi-Processing) de Sun/IBM.
    En memoria distribuida MIMDmáquinas (sistemas multiprocesador débilmente acoplados) todos los PE tienen una memoria local. La comunicación entre los PE en este modelo se realiza a través de la red de interconexión (el canal de comunicación entre procesos o IPC). La red que conecta los PE se puede configurar en árbol, en malla o de acuerdo con los requisitos.
    La arquitectura MIMD de memoria compartida es más fácil de programar pero es menos tolerante a fallas y más difícil de extender con respecto al modelo MIMD de memoria distribuida. Los fallos en un MIMD de memoria compartida afectan a todo el sistema, no así en el modelo distribuido, en el que cada uno de los PE se puede aislar fácilmente. Además, es menos probable que las arquitecturas MIMD de memoria compartida se escalen porque la adición de más PE conduce a la contención de la memoria. Esta es una situación que no ocurre en el caso de la memoria distribuida, en la que cada PE tiene su propia memoria. Como resultado de los resultados prácticos y los requisitos del usuario, la arquitectura MIMD de memoria distribuida es superior a los otros modelos existentes.

Referencia:
taxonomía de Flynn Dominio de
la computación en la nube : fundamentos y programación de aplicaciones

Publicación traducida automáticamente

Artículo escrito por support3 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *