Hi David, > Actually, if we don't care where memory is allocated, we can at least try to > have the more common setup work properly (i.e. spread memory allocations > based on used cores). > I can see no usual setup where you want to use cores on a socket while having > all memory on another socket but still expect performance to be good. > > So here is another approach for Didier's patch. > We can try to spread memory on numa sockets, if this fails, then we default > to previous behavior but leave a trace with a warning log "Could not spread > memory on numa sockets". > > What do you think about this ?
Sounds like an overcomplication to me. There could be cases where performance doesn't matter, for example the -m switch could be used to run various tests (unit tests, functional tests etc.). For anything performance-related, the recommended option is to use --socket-mem, especially if you have NICs on specific sockets. Presumably, when you're setting up a coremask, you already know which sockets your cores are on, so I don't see a problem with specifying which sockets you want memory from. Best regards, Anatoly Burakov DPDK SW Engineer