Processor Architectures and Boolean Algebra: Question 1

Syllabus 15.1

Multiple choice A2 1 mark

A graphics processor applies the same brightness-adjustment instruction to every pixel of a photograph at the same time. Hundreds of separate processing units are used, each one applying that identical instruction to a different pixel's colour data simultaneously, all under the control of a single instruction stream.

Which of the four basic computer architectures does this describe?

Choose an answer to check it, then compare with the worked solution below.

Show worked solution Hide worked solution

Worked solution

The four basic computer architectures

Every computer architecture can be classified by asking two separate questions: how many instruction streams are being carried out, and how many data streams are being operated on, at the same time.

  • SISD (Single Instruction, Single Data): one processor executes one instruction stream on one item of data at a time, the traditional single-core processor model.
  • SIMD (Single Instruction, Multiple Data): one instruction stream is broadcast to many processing units, each of which applies that same instruction to its own, different item of data, all at the same time.
  • MISD (Multiple Instruction, Single Data): several processing units each execute a different instruction stream, but all of them operate on the same single shared item of data. This category is rare in practice (it appears mainly in specialised fault-tolerant systems where several units process the same data differently so their results can be cross-checked).
  • MIMD (Multiple Instruction, Multiple Data): several independent processors each execute their own instruction stream on their own independent data, for example, a multi-core computer or a network of computers, each working on a different part of a task (or even entirely different tasks) at the same time.

Applying this to the scenario

The graphics processor scenario has two key features:

  1. One instruction stream: the same brightness-adjustment instruction is applied by every processing unit. There is no suggestion that different units run different instructions.
  2. Many data streams: each processing unit works on a different pixel’s colour data, so many separate items of data are being processed at once.

One instruction stream applied to many data streams simultaneously is exactly the definition of SIMD.

Why the other options are wrong

  • A (SISD): SISD has only a single data stream. Here, hundreds of pixels’ worth of data are being processed at the same time, so there are clearly many data streams, not one.
  • C (MISD): MISD requires multiple different instruction streams acting on a single shared data item. Here it is the reverse: a single instruction is shared across many different data items.
  • D (MIMD): MIMD requires each processing unit to run its own independent instruction stream. Here every processing unit runs the same instruction (brightness adjustment), so the instruction stream is single, not multiple.

Final answer

B. SIMD: a single instruction stream (the brightness adjustment) is applied simultaneously across many data streams (each pixel’s colour data), which is the defining feature of a SIMD architecture.