2003 | OriginalPaper | Buchkapitel
Single Instruction Multiple Data (SIMD)
verfasst von : Klaus Wüst
Erschienen in: Mikroprozessortechnik
Verlag: Vieweg+Teubner Verlag
Enthalten in: Professional Book Archive
Aktivieren Sie unsere intelligente Suche, um passende Fachinhalte oder Patente zu finden.
Wählen Sie Textabschnitte aus um mit Künstlicher Intelligenz passenden Patente zu finden. powered by
Markieren Sie Textabschnitte, um KI-gestützt weitere passende Inhalte zu finden. powered by
Bei Single Instruction Multiple Data wirkt ein Befehl nicht nur auf ein, sondern auf mehrere voneinander unabhängige Operandenpaare. Solche Aufgabenstellungen ergeben sich oft in der Wissenschaft und Technik. Ein Beispiel dafür wäre das Skalarprodukt zweier Vektoren: $$\vec x\vec y = \sum\limits_{i = 1}^N {{x_i}{y_i} = {x_1}{y_1} + {x_2}{y_2} + {x_3}{y_3} + \ldots + {x_N}{y_N}} $$ Ein Prozessor, der dieses Produkt auf mehreren ALUs parallel berechnen kann, wird Vektorprozessor genannt.1 Ein SIMD-Befehl würde einen Vektorprozessor anweisen, auf der ersten ALU xly1, auf der zweiten ALU x2y2 usw. parallel zu berechnen. Ein Vektorrechner ist bei wissenschaftlichen Programmen mit vielen Berechnungen, die ähnlich dem SkalarproduktBeispiel sind, natürlich klar im Vorteil. Ein bekannter Computer mit Vektorprozessor ist die Cray-1 aus dem Jahr 1976, die tatsächlich überwiegend im wissenschaftlichen Bereich eingesetzt wurde. Vektorprozessoren waren zunächst teuren Supercomputern vorbehalten.