Re: [PATCh v3] powerpc: add hugepagesz boot-time parameter
From: Mel Gorman <hidden>
Date: 2008-01-07 12:35:49
On (04/01/08 00:34), Arnd Bergmann didst pronounce:
On Thursday 03 January 2008, Jon Tollefson wrote:quoted
Paul, please include this in 2.6.25 if there are no objections.No objections to this version from me, just questions.quoted
This patch adds the hugepagesz boot-time parameter for ppc64. It lets one pick the size for huge pages. The choices available are 64K and 16M when the base page size is 4k. It defaults to 16M (previously the only only choice) if nothing or an invalid choice is specified.We started discussing this in v1, but the discussion got sidetracked: Is there a technical reason why you don't also allow 1M pages, which may be useful in certain scenarios?
I cannot see why not although the ideal would be that the necessary information to support the pagesize would be provided by the firmware instead of hard-coded values.
On the Cell/B.E. platforms (IBM/Mercury blades, Toshiba Celleb, PS3), the second large page size is an option that can be set in a HID SPR to either 64KB or 1MB. Unfortunately, we can't do these two simultaneously, but the firmware can change the default and put it into the device tree, or you could have the kernel override the firmware settings. Going a lot further, do you have plans for a fully dynamic hugepage size, e.g. using a mount option for hugetlbfs?
A mount option for hugetlbfs to select a hugepage size is a long-term goal. However, a lot of changes are required to support such a thing. Selecting the hugepage size at boot-time is a reasonable starting point and one that might be usable with some additional work by x86-64 on AMD processors supporting 1GiB pages.
I can see that as rather useful, but at the same time it's probably much more complicated than the boot time option.
Not probably at all. It is *certainly* much more complicated than the boot-time option :) -- Mel Gorman Part-time Phd Student Linux Technology Center University of Limerick IBM Dublin Software Lab