A taxonomia introduzida por Flynn (Flynn, 1972) é ainda a forma mais comum de classificar sistemas de processamento paralelo. Flynn propôs as seguintes categorias de sistemas de computação:
• Única instrução, único dado (SISO - single instruction, single data): um único processador executa uma única seqüência de instruções, usando dados armazenados em uma única memória. Um sistema uniprocessador pertence a essa categoria.
• Única instrução, múltiplos dados (SIMD - single instruction, multiple data): uma única instrução de máquina controla a execução simultânea de um certo número de ele- 652 ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES Cap. 16 mentos de processamento, em passos de execução. Cada elemento de processamento tem uma memória de dados a ele associada, de modo que cada instrução é executada sobre um conjunto de dados diferente em cada processador. Os processadores vetoriais e matriciais pertencem a essa categoria.
• Múltiplas instruções, único dado (MISO - multiple instruction, single data): uma seqüência de dados é transmitida para um conjunto de processadores, cada um dos quais executa uma seqüência de instruções diferente. Essa estrutura nunca foi implementada.
• Múltiplas instruções, múltiplos dados (MIMO): um conjunto de processadores executa simultaneamente seqüências diferentes de instruções, sobre conjuntos de dados distintos. Os SMPs, clusters e sistemas NUMA pertencem a essa categoria.