Understanding and extension of three processor concepts (socket, core, thread, SMT, CMP, SMP)

Source: Internet
Author: User

1. Export the problem:

When I registered a RedHat subscription today, I found that an option is not required. For details, see:

Here is a concept of "slot" or "lpar". It is a bit difficult to translate Chinese characters into "slots". In fact, the English page shows "Number of sockets or lpars: ", so the slot is what scoket means.

Lpar is a logical partition. It divides a single server into multiple logical servers and runs independent applications on each other. Unlike physical partitions, physical partitions combine physical resources to form partitions, while logical partitions do not need to consider the boundaries of physical resources. Comparatively speaking, logical partitions have more flexibility and can freely select components in physical resources. This requires a good guarantee that system resources are used to the maximum extent, however, unnecessary resource redistribution is minimized. In a logical partition environment, such as CPU, memory, and I/O can be allocated to each partition independently. The configuration and management of logical partitions is through the Hardware Management Console (hardware
Management Console.

2. Problem Solving:

After introducing the concepts of "slot" and "lpar", how can we check the number of slots or lpar of the current machine?

First of all, we need to know that lpar has many applications on Minicomputers, and is rarely used on x86 servers. To view the number of slots, run the following command:

[Root @ compute-30-02 ~] # Lscpu | grep "CPU socket"

CPU socket (s): 2

Command to return the result. The number of slots on the current machine is 2. (Lscpu can see a lot of things that CAT/proc/cpuinfo cannot see. It is recommended to use)

In fact, in addition to socket, core and thread are often used to describe the processor. This has a particularly profound impact on qemu users, see the following qemu Virtual Machine (only part of commands are intercepted ):

Qemu 24146 10.0 3.2 1419132 1068608? SL mar21 3907: 32/usr/libexec/qemu-KVM-S-M rhel6.2.0-enable-KVM-M 1024-SMP 1, sockets = 1, cores = 1, threads = 1-name rocks-5.4-39

The red font involves these three concepts. Currently, qemu simulates a processor with one vcpu, one socket, one core, and one threads.

Note: at ordinary times, many administrators may say that this machine is a 2-way 4-core hyper-threading machine, which actually means almost the same. (But many times he does not know what two-way 4-core hyper-threading means ,).

Get down to the truth and understand the image:

(1) socket is the number of CPU slots inserted on the motherboard, that is, the "path" that the Administrator says.

(2) core is what we usually call "core", that is, dual-core, 4-core, etc.

(3) thread is the number of hardware threads for each core, that is, hyper-threading.

For example, if a server is a 2-way 4-core hyper-threading (usually two threads by default, CAT/proc/cpuinfo shows 2*4*2 = 16 processor. Many people are used to becoming 16 cores!

3. Problem Expansion

In addition to the socket, core, and thread concepts, I feel that I often have a full understanding of some concepts, such as SMP (hierarchical multi-processing), CMP (chip multiprocessors), SMT (simultaneous multithreading ), it is often said that there are not many people who can really understand it.

(1) SMT, simultaneous multi-thread simultaneous multithreading (SMT.

SMT allows multiple threads on the same processor to run concurrently and share the execution resources of the processor through the structure status on the replication processor, allows you to process excessive data volumes in a wide-emission or out-of-order manner to the maximum extent, improve the utilization of processor computing components, and reduce the access memory latency caused by data-related or cache miss. When there are no threads available, the SMT processor is almost the same as the traditional Wide-emission processor. The most attractive thing about SMT is that it only needs to change the design of the core of the processor in a small scale and can significantly improve performance without additional costs. Multithreading technology can prepare more data to be processed for the high-speed computing core, reducing the idle time of the computing core. This is undoubtedly very attractive for low-end desktop systems. Intel from 3.06 GHz
Starting with Pentium 4, all processors will support SMT Technology. Intel's hyper-threading is actually two-thread Smt.

(2) CMP, chip multiprocessors (CMP)

CMP was proposed by Stanford University. Its idea is to integrate SMP (symmetric multi-processor) in a large-scale parallel processor into the same chip, and each processor executes different processes in parallel. Compared with CMP, SMT processor structure is more flexible. However, when the semiconductor process enters 0.18 microns, the line delay has exceeded the door delay, requiring the microprocessor to be designed by dividing many smaller and better local basic unit structures. In contrast, since the CMP structure has been divided into multiple processor cores for design, each core is relatively simple and conducive to the optimization design, so there is a more promising future. Currently, both IBM's Power 4 Chip and Sun's majc5200 chip adopt the CMP structure. The multi-core processor can share the cache inside the processor to improve the cache utilization and simplify the design complexity of the multi-processor system.

(3) SMP, Symmetric Multi-processors (SMP)

A group of processors (multiple CPUs) are collected on a computer, and memory subsystems and bus structures are shared among CPUs. With the support of this technology, a server system can run multiple processors at the same time and share memory and other host resources. Like dual Xeon, which is what we call the second path, this is the most common type of symmetric processor system (Xeon MP can support four paths, amd opteron can support one to eight paths ). There are also a few 16 paths. However, generally, SMP-structured machines have poor scalability, and it is difficult to achieve more than 100 multi-processors. Generally, there are 8 to 16 servers, however, this is enough for most users. It is most common in high-performance server and workstation-level motherboard architectures, such as Unix servers that support a maximum of 256 CPUs. In fact, qemu supports up to 256 virtual machines in code design.
CPU.

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.