On Mon, Feb 17, 2014 at 03:23:16PM -0800, David Rientjes wrote: > On Mon, 17 Feb 2014, Luiz Capitulino wrote: > > > hugepages= and hugepages_node= are similar, but have different semantics. > > > > hugepagesz= and hugepages= create a pool of huge pages of the specified size. > > This means that the number of times you specify those options are limited by > > the number of different huge pages sizes an arch supports. For x86_64 for > > example, this limit is two so one would not specify those options more than > > two times. And this doesn't count default_hugepagesz=, which allows you to > > drop one hugepagesz= option. > > > > hugepages_node= allows you to allocate huge pages per node, so the number of > > times you can specify this option is limited by the number of nodes. Also, > > hugepages_node= create the pools, if necessary (at least one will be). For > > this reason I think it makes a lot of sense to have different options. > > > > I understand you may want to add as much code as you can to the boot code > so that you can parse all this information in short-form, and it's > understood that it's possible to specify a different number of varying > hugepage sizes on individual nodes, but let's come back down to reality > here. > > Lacking from your entire patchset is a specific example of what you want > to do. So I think we're all guessing what exactly your usecase is and we > aren't getting any help. Are you really suggesting that a customer wants > to allocate 4 1GB hugepages on node 0, 12 2MB hugepages on node 0, 6 1GB > hugepages on node 1, 24 2MB hugepages on node 1, 2 1GB hugepages on node > 2, 100 2MB hugepages on node 3, etc? Please. Customer has 32GB machine. He wants 8 1GB pages for his performance critical application on node0 (KVM guest), and other guests and pagecache etc. using the remaining 26GB of memory. > If that's actually the usecase then I'll renew my objection to the entire > patchset and say you want to add the ability to dynamically allocate 1GB > pages and free them at runtime early in initscripts. If something is > going to be added to init code in the kernel then it better be trivial > since all this can be duplicated in userspace if you really want to be > fussy about it. Not sure what is the point here. The command line interface addition being proposed is simple, is it not? -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>