The difference between CPU, Processor and Core

Question:

How to understand the difference between CPU, processor and core
If the CPU includes ALU (computing unit), memory unit, IO, then

a) What is a processor and what it contains
b) What is the relationship between CPU and processor
c) What is Core 

Below: Processor=processor, core=core

Answer:

1 Evolution of the processor

The definitions of the terms'Processor','Core', and'CPU' are not very clear. In the past few years, with the evolution of computer architecture, their meanings have also undergone many changes. In the modern definition, the meaning of'Processor' and'CPU' are actually the same thing. More precisely, they refer to the'processor package', because there is no standard that defines what this package should contain. Old CPUs 15-20 years ago contained only the minimum resources required to perform tasks. It includes arithmetic unit, instruction fetching and decoding hardware, instruction pipeline, interrupt processing hardware, and part of IO control hardware. After that, cache memory is added to the CPU to improve execution efficiency.

2 The formation and evolution of the nucleus

After that, the number of processors to perform tasks doubled. The arithmetic unit, instruction fetching and decoding hardware, instruction pipeline, and some cache memory are integrated into what we call'CORE' today. Each'core' can run a single program (when it supports hardware threads such as IntelCPU's super thread, it can also run multiple programs), maintain the correct program status, registers and correct execution order, and pass the arithmetic unit (ALU) To perform operations, the core is the basic computing unit of the CPU. IO read control, interrupt processing, and other resources are shared among all "cores".

In a given time, a CPU/Processor (processor) can have multiple cores to perform tasks. These tasks are usually software processes and threads scheduled by the operating system. Remember that the operating system may have multiple threads running, but the CPU can only run a certain number (X) of tasks in a given time, X = CPU cores * hardware threads per core, the remaining threads must Waiting for the scheduling of the operating system, or preempt the currently running task thread, or other circumstances

Recently, the memory control unit has also been added to the processor package. It resides on the side of the “core” but does not belong to it. So the memory control unit is part of the processor package, or part of the Processor/CPU, but not part of the'core'. Intel is accustomed to use "non-computing cores" to specifically refer to it. The CPU contains the interconnection between the core and the external connection. It is usually a large'end-level' shared cache. You may need many other elements to make the CPU work, such as the memory controller above to interact with the memory---( This is the memory control unit mentioned above), the IO controller to interact with the storage (display, PCIe, USB) and so on. In addition, the CPU may also be integrated with the GPU, and the CPU design is more and more like what we call "SOC"-system on chip.

3 How to calculate the number of cores of a machine

This becomes more complicated when we discuss a system with multiple processors. Many servers and workstations have 2, 4 or more processors installed, and each processor contains the same hardware. Therefore, the number of cores in a machine can be calculated by multiplying the number of "processors" in the system by the number of "cores" in each processor. A computer with two dual-core processors has one core in the same computer. The number of cores in a computer with an eight-core processor is the same

Each processor socket (a plate full of pins and metal) can be inserted into an AMD Opteron 6100 series processor, and each Opteron 6100 processor has 8 or 12 cores. This means that a typical system can have 8 cores (equipped with a single 8-core processor) or 48 cores (equipped with 4 12-core processors)

The following image shows the relationship between SOCKET, CPU/Processor, and CORE

reference:

http://www.tomshardware.com/forum/342869-28-difference-processor-core

http://stackoverflow.com/questions/19225859/difference-between-core-and-processor

Guess you like

Origin blog.csdn.net/zilan23/article/details/113763463