On Mon, 10 Nov 2008, Mel Gorman wrote:

> There has been some disagreement on what the exact purpose of get_huge_pages()
> is. It was felt that the interface name implied that it dealt strictly with
> hugepages. This was reinforced by the fact in 2.0 that the length parameter
> had to be hugepage-aligned and that in 2.1-preX allocations were allowed
> to fall back to base pages. This led to resistance when the scope of the
> function was expanded further to include cache coloring.
> 
> Rather than fighting endlessly, this patch series starts by enforcing that
> get_huge_pages() is a low-level interface dealing exclusively with huge
> pages.  It no longer allows fallback and instead GHP_ flags in the future
> will determine what size of hugepages should be used - e.g. GHP_LARGEST.
> 
> The patch then adds a new API called get_hugepage_region() that is intended
> to be vaguely malloc-like for the allocation of regions of memory that are
> backed by hugepages where possible. It is not responsible for doing packing
> like a true malloc-like interface would but it allows an unaligned length
> and fallback to base pages. The last patch adds support for coloring buffers
> allocated by get_hugepage_region().
> 
> See http://www.csn.ul.ie/~mel/compare-gethugepage-gethugeregion.ps
> 
> It compares the two APIs when used once to allocate three buffers and called
> once for each of the three buffers. Note that calling get_huge_page()
> three times blows for performance as the three arrays use the same cache
> lines at the same offsets. get_hugepage_region() does not suffer the same
> problem as much as an effort is made to color the buffer.
> 
> Changelog since V1
>   o Correct typo in man pages (Jon)
>   o Cache color shuffle (Adam)

Applied, thanks.
Eric

Attachment: signature.asc
Description: Digital signature

-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
Libhugetlbfs-devel mailing list
Libhugetlbfs-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/libhugetlbfs-devel

Reply via email to