Multicore & Parallel Processors (OCR A Level Computer Science)

Revision Note

Jamie Wood

Expertise

Maths

Multicore & Parallel Processors

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

  • When a computer has multiple cores it can use parallel processing where 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

  • 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 0 free revision notes

Get unlimited access

to absolutely everything:

  • Downloadable PDFs
  • Unlimited Revision Notes
  • Topic Questions
  • Past Papers
  • Model Answers
  • Videos (Maths and Science)

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

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.