Recent Updates

[07/24/2009] Etiam odio mi, suscipit et, rhoncus ac, lacinia, nisl. Aliquam gravida massa eu arcu. More…

[07/24/2009] Fusce mollis tristique sem. Sed eu eros imperdiet eros interdum blandit. Vivamus sagittis bibendum erat. Curabitur malesuada. More…

What is the difference between a processor, a chip, a socket, and a core?

Following are brief definitions for common terms related to supercomputers:

Cores

Recent developments in computational architecture can lead to confusion concerning what a microprocessor is. Since the advent of multi-core technology such as dual-cores and quad-cores, the term "processor" has been used to describe a logical execution unit or a physical chip. A multi-core chip may have several cores. With the advent of multi-core technology, the term "processor" has become context sensitive and is largely ambiguous when describing large multi-core systems. Essentially a core comprises a logical execution unit containing an L1 cache and functional units. Cores are able to independently execute programs or threads. Supercomputers in the TeraGrid are listed as having thousands of cores.

Chips

A chip refers to a physical integrated circuit (IC) on a computer. A chip in the context of this document refers to an execution unit that can be single- or multi-core technology

Sockets

The socket refers to a physical connector on a computer motherboard that accepts a single physical chip. Many motherboards can have multiple sockets that can in turn accept multi-core chips.

Processes

A process is an independent program running on a computer. A process has a full stack of memory associated for its own use and does not depend on another process for execution. MPI processes are true processes because they can run on independent machines or the same machine.

Thread

A thread is essentially a process that does not have a full stack of memory associated for it. The thread is tied to a parent process and is merely an offshoot of execution. Typically thread processes must run on the same computer, but can execute simultaneously on separate cores of the same node. OpenMP parallelism uses threads for child processes.

Hyperthreading

Hyperthreading is a technology that preceded multi-core systems in which a single core would logically appear as multiple cores on the same chip. The "false cores" would gain some speed over a single core depending on the application. Most systems currently do not use hyperthreading technology, as this has been outdated by multi-core systems.

N-ways

A chip refers to a physical integrated circuit (IC) on a computer. A chip in the context of this document refers to an execution unit that can be single- or multi-core technology

Processor

As explained above, a processor could describe either a single execution core or a single physical multi-core chip. The context of use will define the meaning of the term.