Parallel computing werkt door grote problemen op te delen in kleinere problemen die vervolgens tegelijkertijd worden opgelost. SIMD en MIMD zijn twee verschillende parallelle computerarchitecturen die meerdere processors en soms meerdere computers gebruiken om gegevens te verwerken. SIMD staat voor Single Instruction stream Multiple Data stream, terwijl MIMD staat voor Multiple Instruction stream Multiple Data stream. SIMD- en MIMD-architecturen voeren vergelijkbare basisfuncties uit, maar ze verschillen zowel praktisch als technisch.
SIMD gedefinieerd
De SIMD-architectuur voert een enkele, identieke actie tegelijkertijd uit op meerdere datastukken, inclusief het ophalen, berekenen of opslaan van informatie. Een voorbeeld is het tegelijkertijd ophalen van meerdere bestanden. Processors met een lokaal geheugen dat verschillende gegevens bevat, voeren dezelfde instructie op een gesynchroniseerde manier uit, met communicatie tussen de processors voor de toewijzing van ploegen.
Video van de dag
MIMD gedefinieerd
De MIMD-architectuur voert meerdere acties tegelijk uit op tal van datastukken. Een voorbeeld is het gelijktijdig uitvoeren van verschillende wiskundige berekeningen - zoals optellen en vermenigvuldigen - om een complex wiskundig probleem met veel afzonderlijke componenten op te lossen. MIMD-computing kan al dan niet worden gesynchroniseerd en komt steeds vaker voor dan SIMD-computing.
Praktische verschillen
SIMD wordt meestal gebruikt voor problemen die veel berekeningen vereisen, waarbij processors dezelfde bewerking parallel uitvoeren. MIMD wordt vaak gebruikt voor problemen waarbij algoritmen worden opgesplitst in afzonderlijke en onafhankelijke delen, waarbij elk deel wordt toegewezen aan een andere processor voor gelijktijdige oplossing.
Technische verschillen
SIMD en MIMD zijn ook technisch verschillend. SIMD-processors zijn meestal eenvoudiger, kleiner, goedkoper en sneller dan MIMD-processors, maar MIMD is in staat tot veel complexere bewerkingen. MIMD-bewerkingen die SIMD ook kan uitvoeren, hebben de neiging om meer tijd in beslag te nemen met SIMD. SIMD-processors moeten complexe bewerkingen sequentieel uitvoeren, terwijl MIMD-processors dit gelijktijdig kunnen doen.