Diferencias entre SIMD y MIMD

La computación paralela funciona dividiendo los problemas grandes en problemas más pequeños que luego se resuelven al mismo tiempo. SIMD y MIMD son dos arquitecturas de computación paralelas diferentes que usan múltiples procesadores y, a veces, múltiples computadoras para procesar datos. SIMD son las siglas de Single Instruction stream Multiple Data stream, mientras que MIMD significa Multiple Instruction stream Multiple Data stream. Las arquitecturas SIMD y MIMD realizan funciones básicas similares, pero difieren tanto práctica como técnicamente.

Definición de SIMD

La arquitectura SIMD realiza una acción única e idéntica simultáneamente en múltiples piezas de datos, incluida la recuperación, el cálculo o el almacenamiento de información. Un ejemplo es la recuperación de varios archivos al mismo tiempo. Los procesadores con memoria local que contienen diferentes datos ejecutan la misma instrucción de forma sincronizada, con comunicación entre procesadores para la asignación de turnos.

Video del día

MIMD definido

La arquitectura MIMD realiza múltiples acciones simultáneamente en numerosas piezas de datos. Un ejemplo es realizar varios cálculos matemáticos, como sumas y multiplicaciones, simultáneamente para resolver un problema matemático complejo con muchos componentes separados. La computación MIMD puede estar sincronizada o no y es cada vez más común que la computación SIMD.

Diferencias practicas

SIMD se usa generalmente para problemas que requieren muchos cálculos con procesadores que realizan la misma operación en paralelo. MIMD se usa con frecuencia para problemas que descomponen los algoritmos en partes separadas e independientes, con cada parte asignada a un procesador diferente para una solución simultánea.

Diferencias tecnicas

SIMD y MIMD también son técnicamente diferentes. Los procesadores SIMD suelen ser más simples, más pequeños, más baratos y más rápidos que los procesadores MIMD, pero MIMD es capaz de realizar operaciones mucho más complejas. Las operaciones MIMD que SIMD también puede realizar tienden a llevar más tiempo con SIMD. Los procesadores SIMD deben realizar operaciones complejas de forma secuencial, mientras que los procesadores MIMD pueden hacerlo al mismo tiempo.