Got it

What is Numa and what is its function?

Latest reply: Jul 29, 2022 11:25:53 1422 10 6 0 0

Hello, everyone!

This post answers the question: 'what is Numa and what is its function?'. Please find more details below.


NUMA refers to the Non-Uniform Memory Access Architecture.


The basic feature of the NUMA server is that it has multiple CPU modules; each CPU module is composed of multiple CPUs (such as 4) and has independent local memory, I/O slots, etc.


Because of the connectivity and information exchange between the nodes through the interconnect module, each CPU accesses local memory faster than the shared memory and other CPU local memory.


Therefore, letting the upper layer perceive NUMA and the allocation of resources within the node can significantly improve performance on data and specific tasks or user-related business servers.

That's all thanks!

  • x
  • convention:

olive.zhao
Admin Created Aug 23, 2021 03:04:09

NUMA (Non-Uniform Memory Access Architecture), the basic feature of NUMA server is that it has multiple CPU modules, each CPU module is composed of multiple CPUs (such as 4), and has independent local memory, I/O slots, etc...

Because of the connectivity and information exchange between the nodes through the interconnect module, each CPU accesses local memory faster than the shared memory and other CPU local memory. Therefore, letting the upper layer perceive NUMA, the allocation of resources within the node, can significantly improve performance on data and specific tasks or user-related business servers.

View more
  • x
  • convention:

zj5000
Created Aug 23, 2021 03:05:40

Numa function:

numaOpts: Whether to specify numa affinity, the default is not enabled. There are two values, 0 or 1. If it is set to 0, it will not be turned on, indicating that the CPU and memory of the virtual machine can be allocated across the numa. For example, the physical machine has two numa nodes: numa0 and numa1. 

The five CPUs of the virtual machine A can be assigned one each on numa0 and numa1. This program is automatically allocated according to the resources based on numa0 and numa1. Set to 1, virtual machine A's CPU and memory are not allowed to be allocated across the numa node, that is, either the CPU or the memory are all allocated on numa0, or all are allocated on numa1.

https://forum.huawei.com/enterprise/en/what-is-numa-feature-in-fusioncloud/thread/543541-893



View more
  • x
  • convention:

Pink_Panther
Created Aug 23, 2021 03:12:06

The essence of the NUMA architecture is that the memory is divided into different areas, and each area corresponds to a part of CPU cores. As shown in Figure 2, the entire system resource is divided into two nodes. Similar to the traditional UMA, the IMC bus is used for communication between different cores in each node. Different nodes communicate with each other through the Quick Path Interconnect (QPI). Compared with the original consistent memory access, the efficiency is improved because the collision probability is lower. Generally, one memory slot corresponds to one node. Note that the latency of the QPI is higher than that of the IMC bus, which means that the CPU accesses the memory.

numa


View more
  • x
  • convention:

olive.zhao
Admin Created Aug 23, 2021 08:34:21

If you want to know more information about NUMA, please check the following post:
What is NUMA(non-uniform memory access)
https://forum.huawei.com/enterprise/en/what-is-numa-non-uniform-memory-access/thread/765925-893
View more
  • x
  • convention:

Gola
Created Aug 24, 2021 13:47:25

https://forum.huawei.com/enterprise/en/what-is-numa-non-uniform-memory-access/thread/765925-893

What is NUMA?
Non-uniform memory access (NUMA) is a computer memory design used in multiprocessing, where the memory access time depends on the memory location relative to the processor. Under NUMA, a processor can access its own local memory faster than non-local memory (memory local to another processor or memory shared between processors). The benefits of NUMA are limited to particular workloads, notably on servers where the data is often associated strongly with certain tasks or users.

NUMA

In the NUMA architecture, there are multiple CPU modules, and each CPU module includes multiple CPUs, and has independent local memory, I/O slots, and the like. Each CPU can access the memory of the entire system because its nodes can connect and exchange information by using an interconnection module (for example, a crossbar switch). Obviously, the speed of accessing the local memory is much higher than that of accessing the remote memory (memory of other nodes in the system), which is also the reason for non-consistent memory access.

In terms of architecture, NUMA and MPP have many similarities. They are composed of multiple nodes. Each node has its own CPU, memory, and I/O. Nodes can exchange information through the node interconnection mechanism. But there's a big difference:

1. Node interconnection mechanism: The node interconnection mechanism of the NUMA is implemented in the same physical server. When a CPU needs to access the remote memory, it must wait. This is the main reason why the NUMA server cannot implement linear performance expansion when the CPU increases.

2. Memory access mechanism: In the NUMA server, any CPU can access the memory of the entire system, but the performance of remote access is far lower than that of local memory access. Therefore, remote memory access should be avoided when developing applications.

Function
What is Numa and what is its function?

What is NUMA affinity?
Memory access between NUMA regions not only needs to pass through a memory bus, but also needs to pass through an inter-region bus to access data. On the one hand, this access increases the delay, and on the other hand, there is a possibility of secondary collision on the QPI bus. In addition, the high-speed interconnection bus led by the QPI/UPI is a patented technology of Intel. Although the access speed of the bus is lower than that of the memory bus, the CPU of the Intel x86 architecture does not cause a big bottleneck. ARM does not include this technology, so the bottleneck is even more serious. Therefore, NUMA affinity needs to be set for VMs that have high memory access efficiency, especially for ARM CPUs. For NUMA affinity, you can select a NUMA topology to limit the NUMA region where CPUs allocated to VMs are located, and a corresponding quantity of CPUs and memory allocated in each region. Compared with the scenario where the CPU and memory are randomly allocated when NUMA affinity is disabled, the CPU access to another NUMA region can be reduced to improve efficiency. In the extreme case, the NUMA region where the CPU allocated to the VM is located is set to 1. In this case, the CPU and memory allocated to the VM are in the same NUMA region. In this case, no cross-NUMA memory access exists. But it can also lead to a waste of resources. (For example, NUMA 0 has two CPUs, NUMA 1 has two CPUs, and there is a 4-CPU VM. If the NUMA region where the CPU allocated to the VM resides is set to 1, the VM cannot be deployed.)

NUMA Annfinity

NUMA affinity means that VMs share the memory and CPU resources on the same NUMA node. That is, the CPU and memory of VMs must be on the same NUMA node. NUMA affinity means that VMs share memory, CPU, and PCI resources on the same NUMA.

In addition, huge page VMs must be created on the NUMA node. The EVS and sriov NIC VMs must be created on the NUMA node. NUMA VMs and non-NUMA VMs cannot share the same board.

VM NUMA affinity
1. Register an image.

2. Create a flavor.

flavor

flavor

3. Create a network.

4. Create a VM.

5. Check the NUMA information of the NUMA affinity VM.

a. On the FusionSphere OpenStack server, run the nova show $vmid command to obtain the instance ID of the VM.

instanceID

b. Log in to the host where the NUMA affinity VM resides in SSH mode and run the virsh vcpuin instanceID command to query the vCPU information of the VM.

NUMA

c. Run the numactl -H command to check the NUMA nodes (node0 and node1) on the host where the NUMA affinity VM resides, as well as the CPU and memory of each NUMA node. The CPU and memory of the NUMA affinity VM are stored on the NUMA node numa0.

numactl -h
View more
  • x
  • convention:

MahMush
Moderator Author Created Jun 27, 2022 12:06:20

NUMA (non-uniform memory access) allows a cluster of microprocessors in a multiprocessing system to share memory locally, enhancing performance and scalability.
View more
  • x
  • convention:

MahMush
MahMush Created Jun 27, 2022 12:08:18 (0) (0)
SMP uses NUMA. Multiple processors working under a single operating system access each other's memory over a common bus or "interconnect" link in an SMP system. As microprocessors are added, SMP's common bus or data route becomes congested and a bottleneck. NUMA adds a shared memory level between a few microprocessors so all data accesses don't travel on the main bus.  
vladislavzh
HCIE Created Jul 16, 2022 18:45:18

What is Numa and what is its function?-5086297-1
View more
  • x
  • convention:

user_3915171
Created Jul 28, 2022 23:51:46

thanks
View more
  • x
  • convention:

MahMush
Moderator Author Created Jul 29, 2022 11:25:53

NUMA (non-uniform memory access) is a method of configuring a cluster of microprocessor in a multiprocessing system so that they can share memory locally, improving performance and the ability of the system to be expanded. NUMA is used in a symmetric multiprocessing ( SMP ) system.
View more
  • x
  • convention:

Comment

You need to log in to comment to the post Login | Register
Comment

Notice: To protect the legitimate rights and interests of you, the community, and third parties, do not release content that may bring legal risks to all parties, including but are not limited to the following:
  • Politically sensitive content
  • Content concerning pornography, gambling, and drug abuse
  • Content that may disclose or infringe upon others ' commercial secrets, intellectual properties, including trade marks, copyrights, and patents, and personal privacy
Do not share your account and password with others. All operations performed using your account will be regarded as your own actions and all consequences arising therefrom will be borne by you. For details, see " User Agreement."

My Followers

Login and enjoy all the member benefits

Login

Block
Are you sure to block this user?
Users on your blacklist cannot comment on your post,cannot mention you, cannot send you private messages.
Reminder
Please bind your phone number to obtain invitation bonus.
Information Protection Guide
Thanks for using Huawei Enterprise Support Community! We will help you learn how we collect, use, store and share your personal information and the rights you have in accordance with Privacy Policy and User Agreement.