Community resourceWorksheet
OCR H446 1.1.2 Multicore and parallel systems
Part 3 of 5 · H446 1.1.2 · Types of processor
OCR H446 1.1.2: Multicore and parallel systems. Students learn to allocate work across cores or processors and explain why dependencies, serial work and bottlenecks limit parallel speed-up.
Students will:
- allocate tasks across cores or processors
- analyse dependencies, serial work and bottlenecks
- compare parallel methods and explain limits to speed-up
Inside: 7 explanation cells, 1 multiple-choice question, 2 fill-in-the-blanks cells and 4 written answers. 42 marks, about 60 to 75 minutes.
Series: H446 1.1.2 · Types of processor, part 3 of 5.
Shared by Coding PathwayVerified teacher
- 14 cells
- About 60 minutes
- CC BY-SA 4.0
- Shared 31 Aug 2026
- Updated 3 Sept 2026
Preview
The whole resource, exactly as a class sees it. Answers and marking are held back.
Multicore and parallel systems
A multicore processor provides multiple processing cores. Parallel processing uses multiple processing units at the same time, but useful speed-up depends on what work can run independently and whether the software actually distributes it.
Dependencies decide what can run together
A parallel system may use multiple processors, multiple CPU cores or GPU processing units. The graph shows why core count alone is not a multiplier: serial preparation A and final combination E cannot overlap with all the middle work; three independent middle tasks also need more than one wave on two cores.
Three routes to parallel processing
- Multiple CPU cores: one processor package contains cores that can execute separate instruction streams; suitable software can split a program or run several programs concurrently.
- Multiple processors: separate processor packages/units can share a larger system workload, with communication and coordination costs.
- GPU processing units: many specialised units apply similar operations to many independent data items.
All three require a task or workload that can be divided. Hardware availability does not create independence.
Worked allocation: two-core environmental model
- Core 1 performs A while core 2 waits because B, C and D require A's prepared data.
- Core 1 runs B while core 2 runs C.
- One core runs D; the other cannot start E because E waits for B, C and D.
- One core runs E.
The middle stage gains from parallel execution, but serial work, the number of cores, scheduling and the join limit total speed-up. Communication, memory access or I/O can add further bottlenecks.
Do not substitute pipelining
Parallel processing: different tasks/instruction streams execute on multiple processing units at the same time.
Pipelining: different instructions occupy different fetch/decode/execute stages at the same time within a processor pipeline, improving throughput. It does not mean that one core is “the fetch core”, another “the decode core” and a third “the execute core”.
Why might four cores fail to make a program four times faster?
- AEach extra core reduces the instruction set
- BMulticore processors cannot execute instructions simultaneously
- CSome work is serial or dependent, and coordination/software/bottlenecks limit overlap
- DThe GPU automatically replaces all cores
- cores
- split
- waiting
- stages
- storage
Use the A → (B, C, D) → E graph.
- Describe a valid schedule on two cores.
- Explain why A and E cannot run in parallel with the middle tasks.
- State how the middle stage changes when three cores are available.
- Explain why the total time still does not fall in direct proportion to the number of cores.
Track dependencies and available processing units; do not assume all five tasks start together.
Students type their answer here.
Explain four reasons why adding cores may produce little improvement for a particular application. Include at least one software reason, one task/dependency reason and one system bottleneck/overhead.
Develop each point rather than naming it.
Students type their answer here.
Apply the model to mixed systems
Use the task-allocation and dependency model to analyse multiple programs and systems that combine different forms of parallel work.
A school server runs backups, report generation and interactive requests at the same time. Explain two multicore benefits and two limitations in this context. Distinguish running different programs from splitting one program into parallel tasks.
Use separate programs/threads, responsiveness/throughput and shared-resource limits.
Students type their answer here.
A scientific workload could use three different forms of parallel processing. For each method below, describe the processing-unit arrangement, give an example of suitable assigned work and state one coordination or suitability condition.
- Multiple processors.
- Multiple CPU cores.
- GPU processing units.
The methods can coexist; do not rank them from fastest to slowest without workload evidence. Each method is worth 3 marks.
Students type their answer here.
Consolidate your understanding
Check that every speed-up claim identifies independent work, available processing units, remaining serial work and any communication or I/O bottleneck.