# Taxonomia de Flynn

Taxonomia de Flynn :
| | Instrucció Simple | Múltiples Instruccions |
| Dada Simple | SISD | MISD |
| Múltiples Dades | SIMD | MIMD |
| Aquesta caixa: |||
La taxonomia de Flynn és una classificació de l'arquitectura dels computadors, proposada per Michael J. Flynn el 1966.

## Classificacions

Les quatre classificacions definides per Flynn, el nom està basat amb el nombre d'instruccions concurrents (o de control) i els fluxos de dades disponibles per l'arquitectura:

### Single Instruction, Single Data stream (SISD)

    Un computador seqüencial que no explota el paral·lelisme ja sigui en les instruccions o en flux de dades. Exemples d'arquitectures SISD són els tradicionals computadors uniprocessador com PC o antics mainframes.

### Single Instruction, Multiple Data streams (SIMD)

    Un computador que explota fluxos de dades múltiples contra un flux simple d'instruccions per realitzar operacions que poden ser paral·lelitzades. Per exemple, un processador vectorial o GPU.

### Multiple Instruction, Single Data stream (MISD)

    Instruccions múltiples que operen en un flux de dades simple. Arquitectura poc freqüent que s'utilitza sovint per la tolerància a errades. Sistemes heterogenis que operen amb el mateix flux de dades i han d'estar d'acord amb el resultat. Exemples inclouen el computador de control de vol d'una llançadera espacial.

### Multiple Instruction, Multiple Data streams (MIMD)

    Processadors autònoms múltiples que executen simultàniament instruccions diferents amb dades diferents. Els sistemes distribuïts són generalment reconeguts a ser arquitectures MIMD; o bé l'explotació d'un únic espai de memòria compartida o un espai de memòria distribuït.

## Diagrama comparatiu de les classificacions

Visualment, Aquestes quatre arquitectures es mostren a continuació, on cada "PU" és una unitat de processament:
    SISD MISD SIMD MIMD

## Noves Divisions

A partir de 2006, tots els 10 principals i la majoria dels supercomputadors de TOP500 estan basats amb l'arquitectura MIMD.
Alguns encara subdivideixen la categoria MIMD en les següents subcategories: Arxivat 2004-06-04 a Wayback Machine. Arxivat 2006-09-01 a Wayback Machine. Arxivat 2013-12-13 a Wayback Machine. Arxivat 2007-02-03 a Wayback Machine.

### Single Program, Multiple Data (SPMD)

    Processadors múltiples simultàniament autònoms executen el mateix programa (però en punts independents, més que en el lockstep que SIMD imposa) amb dades diferents. També es va referir com a 'Single Process, multiple data' Arxivat 2007-02-03 a Wayback Machine.. SPMD és l'estil més comú de la programació paral·lela. El terme va ser creat originalment per Gregory F. Pfister.

### Multiple Program Multiple Data (MPMD)

    Processadors múltiples autònoms que operen simultàniament almenys amb 2 programes independents. Normalment aquest tipus de sistemes seleccionen un node que és l'amfitrió "host" ("El model explícit de programació host/node") o "manager" (estratègia "Manager/Worker"), que executa un programa que proporciona dades als altres nodes que esn executant un programa secundari. Els altres nodes, a continuació, envien els seus resultats directament al manager.
Encara més subdivisions de vegades són considerades.

## Referències

* ↑ Flynn, M., Some Computer Organizations and Their Effectiveness, IEEE Trans. Comput., Vol. C-21, pp. 948, 1972.
* ↑ Duncan, Ralph, "A Survey of Parallel Computer Architectures", IEEE Computer. February 1990, pp. 5-16.
* ↑ Frederica Darema, David A. George, V. Alan Norton, and Gregory F. Pfister. "A single-program-multiple-data computational model for epex fortran". Parallel Computing, 7:11-24, 1988.

## Enllaços externs

* Michael J. Flynn Arxivat 2013-12-25 a Wayback Machine. (anglès)