The shape of the lesson
By the end of the lesson, learners can
- The four basic architectures: An instruction stream is a sequence of instructions being executed; a data stream is a sequence of data items being processed.
- Massively parallel computers: The fastest computers in the world are not built from one enormous processor.
- Why more processors is not always faster: Splitting a task between processors only helps for the part of the task that can be split.
- Expand the acronym: single or multiple instruction, single or multiple data.
- Say what happens: how many processors, and whether they run the same or different instructions on the same or different data.
- Massively parallel: very many processors, simultaneously, different parts of the same program, connected by a network.
- Examples: GPU or array processor for SIMD; multicore processor for MIMD.
One picture every idea returns to
Flynn's classification describes a computer by its instruction streams and data streams. SISD (single instruction, single data): one processor executes one instruction on one data item at a time, as in the Von Neumann model. SIMD (single instruction, multiple data): one instruction is applied to many data items at the same time, as in array processors and graphics processors. MISD (multiple instruction, single data): several processors apply different instructions to the same data; it is rare. MIMD (multiple instruction, multiple data): several processors each execute their own instructions on their own data, as in multicore processors. A massively parallel computer links a very large number of processors, each usually with its own memory, by a high-speed network so that they work simultaneously on different parts of the same problem.
Forty-five minutes, phase by phase
| Time | Phase | What happens in the room | Grouping |
|---|---|---|---|
| 0 to 5 min | Hook: predict | Open with the question in the title, Many processors, one problem.. Computers are classified by how many instruction streams and data streams they handle at once. Put the figure on the board: it is the one picture every idea in the lesson returns to. | Whole class, then pairs |
| 5 to 13 min | Teach and check: The four basic architectures | An instruction stream is a sequence of instructions being executed; a data stream is a sequence of data items being processed. Model the worked example Matching the architecture to the task on the board, one line at a time. Your turn: A laptop has a quad-core processor. One core plays music while another runs a spreadsheet recalculation. Which architecture is this? | Whole class, then pairs |
| 13 to 21 min | Teach and check: Massively parallel computers | The fastest computers in the world are not built from one enormous processor. Your turn: Give two reasons why a weather forecast is well suited to a massively parallel computer. | Pairs |
| 21 to 30 min | Teach and check: Why more processors is not always faster | Splitting a task between processors only helps for the part of the task that can be split. Project tab 3 of the lab (Cores and the part of a task that can run in parallel) and let a student drive it while the class predicts. Model the worked example How much faster? on the board, one line at a time. | Frayer Model |
| 30 to 36 min | Check | The four Stage 1 questions from the student lesson, answered on mini whiteboards or by show of fingers. Re-teach the one most get wrong. | Individual, then whole class |
| 36 to 43 min | Plenary | The exam-style questions from Stage 2, one at a time: thirty seconds alone, then a random call. The feedback lines in the key give the examiner's wording. | Individual, random call |
| 43 to 45 min | Exit and homework | Set the worksheet below (6 questions, 19 marks). Learners self-assess against the objectives before they leave. | Individual |
Protect the parts that carry the learning
The sequence carries about fifty minutes of material, so the lab is driven by one student while the class predicts rather than explored freely. Times are a guide.
Protected: the check at 30 minutes. It is the only individual read on whether the key idea landed, and it is not cut.
Cut first if the build overruns: the last check in Why more processors is not always faster, never the check or the plenary.
In a 60 minute block: run worksheet questions 1 to 3 in class as a Rally Coach set and model both the hardest worked example and its check live.
Frayer Model
Pairs fill a four-box grid for the key term: definition, characteristics, examples and non-examples. The non-examples box is where the misconceptions surface, so give it the most time.
The full structure, with its variations and the other twelve, is on the cooperative-learning page.
What to head off, and how
| Trap learners fall into | Teaching move that pre-empts it |
|---|---|
| Do not confuse SIMD with MIMD. | In SIMD every unit executes the same instruction in lock-step; in MIMD each processor can be running a completely different program. |
| A massively parallel computer is not the same as a multicore PC. | The mark points are a very large number of processors, working at the same time on different parts of the same program, communicating through a network. |
| Doubling the number of processors does not halve the time unless the whole task can be split and the processors never need to communicate. | Return to Why more processors is not always faster: ask a pair to state the correct version and show it on the lab before moving on. |
Parallel processing architectures: worksheet
6 questions, 19 marks. Written in the style of the papers; no past paper question is reproduced.
Describe the SIMD and MIMD computer architectures.
Describe the characteristics of a massively parallel computer.
A photo-editing program brightens every pixel of a 24-megapixel image by adding the same value to each one. State which architecture would be most suitable, and justify your choice.
Explain the difference between SISD and MISD.
A simulation takes 60 seconds on one processor. 90% of the work can be divided equally between processors. Calculate the time taken on 10 processors, and the speed-up to one decimal place.
A school wants to buy a massively parallel computer to run its student records database faster. Explain why this is unlikely to be a good choice.
Answer key and marking notes
- SIMD: single instruction, multiple data.
- One instruction is executed on many data items at the same time (each processing unit has its own data item), e.g. an array processor or a GPU.
- MIMD: multiple instruction, multiple data.
- Several processors each execute their own instructions on their own data at the same time, e.g. a multicore processor.
- A very large number of processors (or computers).
- They work simultaneously / at the same time.
- Each works on a different part of the same program or problem.
- They communicate through a high-speed interconnection network; each processor usually has its own memory.
- SIMD.
- The same instruction (add the value) is applied to every pixel.
- Many pixels can be processed at the same time, one by each processing unit, so the whole image is processed much faster.
- SISD: a single processor executes a single instruction stream on a single data stream.
- MISD: several processors execute different instruction streams on the same single data stream.
- Sequential part: 10% of 60 s = 6 s.
- Parallel part: 54 s ÷ 10 = 5.4 s, so the total is 6 + 5.4 = 11.4 s.
- Speed-up: 60 ÷ 11.4 = 5.3 times.
- Massively parallel computers only help with problems that can be split into many independent parts processed at the same time.
- Database tasks such as updating a record are small and largely sequential, and need consistent shared data.
- The cost, the specialist software and the communication overhead would far outweigh any benefit; a standard (multicore) server is suitable.
6 multiple-choice questions on this lesson
From the topic question bank. Assign them in the app for a marked score in your gradebook, or run the topic as a class game.
In which architecture do several processors carry out different instructions on the same single stream of data?
- AMISD
- BSIMD
- CMIMD
- DSISD
A sound editor halves the volume of a recording. Many processing units work in lock-step, each multiplying a different sample by 0.5 in the same clock cycle. Which architecture is this?
- ASIMD
- BMIMD
- CMISD
- DSISD
A task takes 120 s on one processor. 75% of the work can be split equally between processors; the rest must run on one processor. How long does the task take on 6 processors?
- A45 s
- B20 s
- C95 s
- D15 s
Which is a characteristic of a massively parallel computer?
- AThousands of processors, usually each with its own memory, linked by a high-speed network
- BOne very fast processor that switches rapidly between thousands of separate tasks
- CA few processors that take turns to use a single shared ALU and register set
- DThousands of processors that each run a different, unrelated program for a different user
90% of a program can be split equally between processors and the other 10% cannot. However many processors are added, what is the greatest speed-up that can ever be achieved compared with one processor?
- A10 times
- B9 times
- C90 times
- DThere is no limit
Which task would gain least from being run on a massively parallel computer?
- ACalculating the terms of a sequence in which each term depends on the term before it
- BForecasting the weather by calculating the conditions in millions of separate grid cells
- CRendering the 200 000 separate frames of an animated film, one frame per processor
- DSearching a very large DNA database by giving each processor a different section
Quiz key
Multiple instruction, single data: different instructions applied to the same data, as in some fault-tolerant systems that compare results. SIMD is one instruction on many data items, MIMD is many processors each with their own instructions and data, and SISD is one processor with one instruction stream and one data stream.
Every unit carries out the same instruction (multiply by 0.5) on its own sample at the same time: single instruction, multiple data. MIMD would have each processor running its own different instructions; MISD applies different instructions to the same data; SISD would process one sample at a time.
The sequential 25% always takes 30 s; the parallel 75% (90 s) becomes 90 / 6 = 15 s; total 30 + 15 = 45 s. 20 s divides the whole task by 6, ignoring the sequential part. 95 s swaps the two percentages, and 15 s is only the parallel part.
A massively parallel computer has a very large number of processors, each usually with its own memory, communicating over a fast interconnection network while working simultaneously on parts of the same problem. Switching quickly between tasks on one processor is multitasking, not parallel processing. Taking turns with one ALU is not parallel at all, and the processors work on one shared problem rather than unrelated programs.
With unlimited processors the parallel 90% takes almost no time, but the sequential 10% always takes the same time, so the run can never be faster than 1 / 0.1 = 10 times. 9 times divides 90 by 10; 90 times confuses the percentage with the speed-up; and there is a limit because the sequential part never shrinks.
If each term needs the one before it, the terms must be calculated one after another, so extra processors sit idle. The weather grid, the film frames and the database sections can all be divided into many independent parts processed at the same time, which is exactly what a massively parallel computer is for.
What to project
The student lesson embeds these tabs. Open them full screen on the projector; every slider has a drag handle on the stage.
Slides for this lesson
A projectable deck for every pack is on the way. Until then, present the student lesson full screen: its sections, figure and lab tabs follow the same order as the plan above.