MIMD (Multiple Instructions, Multiple Data) er en av fire former for datamaskinarkitekturer, i en klassifisering som ble foreslått av Michael J. Flynn i 1966.[1][2]

MIMD
Flynns taksonomi
  Single
Instruction
Multiple
Instruction
Single
Data
SISD MISD
Multiple
Data
SIMD MIMD

En MIMD mikroprosessor vil ha flere instruksjonsstrømmer som opererer på flere datastrømmer samtidig. Eksempler er moderne flerkjerners mikroprosessorer, hvor hver kjerne typisk utfører en eller to (i tilfeller med hyperthreading) instruksjonsstrømmer samtidig, og hvor instruksjoner har muligheten for å operere på flere datastrømmer samtidig (SIMD).

Ved introduksjonen av intels P5 mikroarkitektur ble mikroprosessorene også superskalare, dvs. de kunne utføre mer en en instruksjon per klokke-syklus. Dette ble oppnådd ved at man brøt opp komplekse CISC instruksjoner til mikrooperasjoner som minner om RISC instruksjoner for så å utføre dem ut av rekkefølge i en dobbel pipeline.

Tar man også med at hver komplekse instruksjon kunne operere på flere data når man benytter SIMD instruksjonssett-utvidelsen, så har man i praksis en MIMD prosessor, allerede så tidlig som de første enkelt-kjerners Intel Pentium MMX prosessorene.

ReferanserRediger

  1. ^ Michael J. Flynn: Some Computer Organizations and Their Effectiveness, IEEE Trans. Comput., Vol. C-21, s. 948, 1972
  2. ^ Ralph Duncan: A Survey of Parallel Computer Architectures, IEEE Computer. februar 1990, s. 5-16.