Instruction execution trade-offs for SIMD vs. MIMD vs. mixed mode parallelism

Mixed-mode parallel processors can quickly switch from executing instructions in single instruction, multiple data stream (SIMD) mode to executing them in multiple instruction, multiple data stream (MIMD) mode. To fully exploit this capability, the circumstances under which each mode should be used must be understood. This paper explores mixed-mode parallelism by presenting a general overview of the trade-offs between SIMD and MIMD modes, and then characterizing in detail three of the trade-offs concerning instruction execution performance. These include the effect of overlapping control unit and processor execution in SIMD mode, performance of conditional statements, and the consequences of switching parallelism modes.<<ETX>>