Multicore & Parallel Processors (OCR A Level Computer Science): Revision Note

Exam code: H446

Jamie Wood

Written by: Jamie Wood

Reviewed by: James Woodhouse

Updated on

Multicore & Parallel Processors

What is parallel processing?

  • In A Level Computer Science, parallel processing is when a computer has multiple cores

  • Each core can work on the same task, to complete it more quickly, or each core can work on separate tasks at the same time

What is multicore processing?

  • A multicore system has more than one processing unit in a single processor which can independently process instructions at the same time

  • Parallel processing can also be achieved by utilising more than one processor (a CPU and a GPU)


Benefits


Limitations

Speed: If a task can be divided into subtasks that can be executed simultaneously, the total execution time can be reduced

Limit on maximum speed: Even with an infinite number of processors, there is a limit to the maximum speed improvement that can be made using parallel processing if a part of the program can’t be parallelised

Improved performance: Simultaneous computation can take place on different data subsets (this would be used in machine learning, data mining and scientific computing)

Complex programming: It is harder to write code for parallel processing than serial processing. Tasks have to be synchronised and data shared correctly

Better resource utilisation: Parallel processing allows for better use of computer resources as multi-core or multiple processors can be used more effectively

Debugging difficulty: It is more difficult to debug a parallel program than a serial program due to the precise timing of specific events 

Problem solving: Problems which are large and complex (which lend themselves to parallel processing) can be solved more easily

Communication between processors: Communication between processors can take significant time and resources, potentially outweighing the benefits of using parallel processing

Real-Time applications: Real-time applications including graphics rendering are more feasible and will benefit significantly

Limited applicability: Not all tasks can be run in parallel and must be executed serially

What are the benefits of using multicore processors?

  • Multitasking

    • Each core can work on a different task - this is particularly effective when the user has multiple applications open at the same time

  • Background tasks

    • When using a single core processor, a background task like anti-malware scans can slow down the user's other task. A multi-core processor can assign the background task to one core, to reduce the impact on the other task

  • Improved responsiveness

    • If a program becomes unresponsive, it won’t slow the user's computer down as much if they're using multi-core as other cores will continue running their task

You've read 0 of your 5 free revision notes this week

Unlock more, it's free!

Join the 100,000+ Students that ❤️ Save My Exams

the (exam) results speak for themselves:

Did this page help you?

Jamie Wood

Author: Jamie Wood

Expertise: Maths Content Creator

Jamie graduated in 2014 from the University of Bristol with a degree in Electronic and Communications Engineering. He has worked as a teacher for 8 years, in secondary schools and in further education; teaching GCSE and A Level. He is passionate about helping students fulfil their potential through easy-to-use resources and high-quality questions and solutions.

James Woodhouse

Reviewer: James Woodhouse

Expertise: Computer Science & English Subject Lead

James graduated from the University of Sunderland with a degree in ICT and Computing education. He has over 14 years of experience both teaching and leading in Computer Science, specialising in teaching GCSE and A-level. James has held various leadership roles, including Head of Computer Science and coordinator positions for Key Stage 3 and Key Stage 4. James has a keen interest in networking security and technologies aimed at preventing security breaches.