Difficulty: Easy
Correct Answer: one or more ALUs
Explanation:
Introduction / Context:
SIMD (Single Instruction stream, Multiple Data stream) is a classic parallel architecture classification in computer organization. In a SIMD machine, one control unit fetches and decodes a single instruction, and that instruction is executed simultaneously across multiple processing elements (PEs) or arithmetic logic units (ALUs) on different data items. This question checks your understanding of how many ALUs a single control unit can direct in such systems.
Given Data / Assumptions:
Concept / Approach:
In SIMD, the defining feature is one control unit driving multiple execution lanes. The number of ALUs is not fixed to a specific constant; it varies by design and scale. Historic examples include array processors and vector supercomputers with many ALUs; modern examples include GPUs or vector units (e.g., SSE/AVX/NEON) with lane counts that differ by generation. Therefore, the accurate characterization is that a single control unit can control one or more ALUs, typically many in practical designs.
Step-by-Step Solution:
Verification / Alternative check:
Real systems (vector supercomputers, GPUs, and SIMD instruction sets in CPUs) demonstrate many ALUs executing the same instruction on packed data. Documentation consistently describes a broadcast control to multiple lanes, not a fixed two-ALU limit or single-ALU constraint.
Why Other Options Are Wrong:
Common Pitfalls:
Confusing SIMD with MIMD (multiple instruction streams) or SISD (scalar). Assuming a fixed ALU count rather than a scalable array or vector width that can grow across implementations.
Final Answer:
one or more ALUs
Discussion & Comments