Multicore & Parallel Processors (OCR A Level Computer Science)
Revision Note
Author
Jamie WoodExpertise
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)
|
|
---|---|
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)
Did this page help you?