Przetwarzanie równoległe polega na dzieleniu dużych problemów na mniejsze problemy, które są następnie rozwiązywane w tym samym czasie. SIMD i MIMD to dwie różne równoległe architektury obliczeniowe, które wykorzystują wiele procesorów, a czasem wiele komputerów do przetwarzania danych. SIMD to skrót od Single Instruction stream Multiple Data stream, podczas gdy MIMD to Multiple Instruction stream Multiple Data stream. Architektury SIMD i MIMD wykonują podobne podstawowe funkcje, ale różnią się zarówno praktyczną, jak i techniczną.
Zdefiniowano SIMD
Architektura SIMD wykonuje jedno, identyczne działanie jednocześnie na wielu fragmentach danych, w tym pobieranie, obliczanie lub przechowywanie informacji. Jednym z przykładów jest jednoczesne pobieranie wielu plików. Procesory z pamięcią lokalną zawierającą różne dane wykonują tę samą instrukcję w sposób zsynchronizowany, z komunikacją między procesorami w celu przydzielania zmian.
Wideo dnia
Zdefiniowano MIMD
Architektura MIMD wykonuje wiele działań jednocześnie na wielu fragmentach danych. Jednym z przykładów jest jednoczesne wykonywanie różnych obliczeń matematycznych, takich jak dodawanie i mnożenie, w celu rozwiązania złożonego problemu matematycznego z wieloma oddzielnymi składnikami. Przetwarzanie MIMD może, ale nie musi być zsynchronizowane i jest coraz powszechniejsze niż przetwarzanie SIMD.
Praktyczne różnice
SIMD jest zwykle używany w przypadku problemów wymagających wielu obliczeń z procesorami wykonującymi tę samą operację równolegle. MIMD jest często używany do rozwiązywania problemów, które dzielą algorytmy na oddzielne i niezależne części, przy czym każda część jest przypisana do innego procesora w celu jednoczesnego rozwiązania.
Różnice techniczne
SIMD i MIMD różnią się również technicznie. Procesory SIMD są zwykle prostsze, mniejsze, tańsze i szybsze niż procesory MIMD, ale MIMD może wykonywać znacznie bardziej złożone operacje. Operacje MIMD, które może również wykonać SIMD, zwykle zajmują więcej czasu z SIMD. Procesory SIMD muszą wykonywać złożone operacje sekwencyjnie, podczas gdy procesory MIMD mogą to robić jednocześnie.