[dpdk-dev] NUMA node/socket

Thomas Monjalon thomas at monjalon.net
Sun Jul 4 11:28:23 CEST 2021


04/07/2021 10:27, Andrew Rybchenko:
> On 7/4/21 4:53 AM, Thomas Monjalon wrote:
> > 04/07/2021 03:38, Thomas Monjalon:
> >> There are some mix between NUMA node and socket IDs in DPDK.
> >> Examples:
> >> 	* rte_eth_dev_socket_id() returns the NUMA node.
> >> 	* rte_malloc use sockets to allocate the memory
> >>
> >> Is it critical?
> > 
> > There is a function, implemented for Windows only,
> > which distinguishes clearly node and socket
> > but it assumes there is only 1 node per socket:
> > 
> > unsigned int
> > eal_socket_numa_node(unsigned int socket_id)
> > {
> >     return cpu_map.sockets[socket_id].node_id;
> > }
> > 
> > Reminder: AMD can be configured to have multiple nodes per socket.
> 
> Taking the reminder into account the topic definitely
> requires improvements.
> 
> I apologize for my ignorance, but
> Is socket ID really interesting to anybody in DPDK?

I think the socket ID might be interesting for the threads,
but not for memory or devices.

> If no, we should just clarify terminology and switch
> to NUMA node everywhere.

I have the same opinion as Andrew.
If socket ID is required, it could be deduced from the NUMA node
or from the CPU core.




More information about the dev mailing list