Taxonomia de Flynn
Instrucció Simple |
Múltiples Instruccions | |
---|---|---|
Dada Simple |
SISD | MISD |
Múltiples Dades |
SIMD | MIMD |
La taxonomia de Flynn és una classificació de l'arquitectura dels computadors, proposada per Michael J. Flynn el 1966.[1][2]
Classificacions
[modifica]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
[modifica]Visualment, Aquestes quatre arquitectures es mostren a continuació, on cada "PU" és una unitat de processament:
Noves Divisions
[modifica]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:[1] Arxivat 2004-06-04 a Wayback Machine.[2] Arxivat 2006-09-01 a Wayback Machine.[3][4] Arxivat 2013-12-13 a Wayback Machine.[5] 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'[6] Arxivat 2007-02-03 a Wayback Machine.. SPMD és l'estil més comú de la programació paral·lela[7]. El terme va ser creat originalment per Gregory F. Pfister.[3]
- 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[8].
Referències
[modifica]- ↑ 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
[modifica]- Michael J. Flynn Arxivat 2013-12-25 a Wayback Machine. (anglès)