computer-architecture

Definition

Processor Core

A processor core is one independent execution unit inside a processor.

A core can fetch, decode, and execute instructions on its own. It therefore has the main logic needed to run a program, such as control logic, registers, and execution units.

A processor may contain one core or several cores. If it contains several, it is a multi-core processor.

Relation to parallelism

Multi-core processors

Multiple cores allow different instruction streams or threads to run at the same time.

This is a form of spatial parallelism, because the hardware is duplicated.

Example

Single-core vs multi-core

A single-core processor can execute only one instruction stream at a time.

A quad-core processor contains four processor cores, so up to four threads can execute in parallel, provided the software and operating system support this.