On Sun, Aug 22, 2021 at 03:19:52PM -0700, Andrew Morton wrote: > On Fri, 20 Aug 2021 11:05:36 +0800 yaozhenguo <yaozhenguo1@xxxxxxxxx> wrote: > > > We can specify the number of hugepages to allocate at boot. But the > > hugepages is balanced in all nodes at present. In some scenarios, > > we only need hugepags in one node. For example: DPDK needs hugepages > > which is in the same node as NIC. if DPDK needs four hugepags of 1G > > size in node1 and system has 16 numa nodes. We must reserve 64 hugepags > > in kernel cmdline. But, only four hugepages is used. The others should > > be free after boot.If the system memory is low(for example: 64G), it will > > be an impossible task. So, add hugepages_node kernel parameter to specify > > node number of hugepages to allocate at boot. > > For example add following parameter: > > > > hugepagesz=1G hugepages_node=1 hugepages=4 > > > > It will allocate 4 hugepags in node1 at boot. > > If were going to do this, shouldn't we permit more than one node? > > hugepages_nodes=1,2,5 I'd think we'd be better off expanding the definition of hugepages. eg: hugepagesz=1G hugepages=1:4,3:8,5:2 would say to allocate 4 pages from node 1, 8 pages from node 3 and 2 pages from node 5.