Skip to content
Skip to main content

About this free course

Download this course

Share this free course

An introduction to computers and computer systems
An introduction to computers and computer systems

Start this free course now. Just create an account and sign in. Enrol and complete the course for a free statement of participation or digital badge if available.

2.1 Multi-core processors

A multi-core processor is a ‘processor’ that contains two or more independent processors called cores. Each core performs the usual functions of loading data and instructions and executing the instructions on the data but instructions can be shared between each of the cores and run at the same time, increasing the overall speed of programs, provided that they are written in such a way to allow for this to happen.

You may think that four cores all working simultaneously would make a program run four times as fast. However, this is not the case. Each core requires its share of the data and instructions to be moved from the shared main memory into its local memory where the instructions are executed on the data. The program has to be written in such a way that a task can be split up into independent sub-tasks, each of which can be completed by a core, and then if necessary, reassembled into a final solution. This process of coordination is a small additional task for the computer to perform. Hence you do not get the full benefit of the extra cores.