Teachers' Portal  /  A-Level Computer Science 9618  /  Hardware and virtual machines  /  Parallel processing architectures
Lesson pack · A-Level Computer Science 9618 · 15.1 · A Level (A2)

Parallel processing architectures

Many processors, one problem. Computers are classified by how many instruction streams and data streams they handle at once.

Student lesson Lab, full screen
At a glance

The shape of the lesson

Topic
Hardware and virtual machines
Syllabus reference
Cambridge International AS and A Level Computer Science 9618, 15.1
Level
A Level (A2)
Duration
45 minutes, lab-led; stretches to a 60 minute block (see the contingency notes)
Position in topic
Lesson 2 of 6 in Hardware and virtual machines; follows RISC and CISC processors and pipelining; leads into Virtual machines
Central model
Fig. 1: Flynn's classification, by number of instruction streams (rows) and data streams (columns)
Cooperative structure
Assessment
Stage 1 check and the exam-style plenary from the student lesson, plus the worksheet as the exit task
Learning objectives

By the end of the lesson, learners can

Section by section
  • 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.
Key points to leave on the board
  • 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.
The core visual model

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.

Flynn's four basic computer architectures single data streammultiple data streams singleinstructionstream multipleinstructionstreams SISDSIMD MISDMIMD one processor, oneinstruction on one iteme.g. early single-core PC same instruction onmany items at oncee.g. array processor, GPU different instructionson the same datae.g. fault-tolerant control each processor runs itsown instructions on own datae.g. multicore CPU, cluster
Fig. 1: Flynn's classification, by number of instruction streams (rows) and data streams (columns)
Lesson sequence

Forty-five minutes, phase by phase

TimePhaseWhat happens in the roomGrouping
0 to 5 minHook: predictOpen 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 minTeach and check: The four basic architecturesAn 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 minTeach and check: Massively parallel computersThe 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 minTeach and check: Why more processors is not always fasterSplitting 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 minCheckThe 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 minPlenaryThe 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 minExit and homeworkSet the worksheet below (6 questions, 19 marks). Learners self-assess against the objectives before they leave.Individual
Timing and contingency

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.

Running the cooperative task

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.

Examiner traps to pre-empt

What to head off, and how

Trap learners fall intoTeaching 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.
Worksheet

Parallel processing architectures: worksheet

6 questions, 19 marks. Written in the style of the papers; no past paper question is reproduced.

NameClassDate
Q1 · recall[4 marks]

Describe the SIMD and MIMD computer architectures.

Q2 · explain[4 marks]

Describe the characteristics of a massively parallel computer.

Q3 · apply[3 marks]

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.

Q4 · explain[2 marks]

Explain the difference between SISD and MISD.

Q5 · calculate[3 marks]

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.

Q6 · analysis[3 marks]

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
Q1 · 4 marks
  • 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.
Q2 · 4 marks
  • 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.
Q3 · 3 marks
  • 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.
Q4 · 2 marks
  • 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.
Q5 · 3 marks
  • 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.
Q6 · 3 marks
  • 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.
Quiz

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.

Q11 mark

In which architecture do several processors carry out different instructions on the same single stream of data?

  • AMISD
  • BSIMD
  • CMIMD
  • DSISD
Q21 mark

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
Q31 mark

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
Q41 mark

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
Q51 mark

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
Q61 mark

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
Q1: A

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.

Q2: A

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.

Q3: A

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.

Q4: A

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.

Q5: A

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.

Q6: A

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.

Lab and demo

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

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.

Also for this topic

Everything else you can use

Original work by the TheLucidSTEM team. The worksheet items are written in the style of the papers; no past paper question is reproduced.
Previous lessonRISC and CISC processors and pipelining