Poster of Linux kernelThe best gift for a Linux geek
GET_HUGE_PAGES

GET_HUGE_PAGES

Section: C Library Functions (3) Updated: October 8, 2008
Local index Up
 

NAME

get_huge_pages, free_huge_pages - Allocate and free hugepages  

SYNOPSIS

#include <hugetlbfs.h>


void *get_huge_pages(size_t len, ghp_t flags);
void free_huge_pages(void *ptr);  

DESCRIPTION

get_huge_pages() allocates a memory region len bytes in size backed by hugepages. Hugepages may be of benefit to applications that use large amounts of address space and suffer a performance hit due to TLB misses. Wall-clock time or oprofile can be used to determine if there is a performance benefit from using hugepages or not.

The len parameter must be hugepage-aligned. In the current implementation, only the default hugepage size may be allocated via this function. Use gethugepagesize to discover what the alignment should be.

The flags argument changes the behaviour of the function. Flags may be or'd together.

GHP_DEFAULT

Allocate a region of memory of the requested length backed by hugepages of the default hugepage size. Return NULL if sufficient pages are not available

free_huge_pages() frees a region of memory allocated by get_huge_pages(). The behaviour of the function if another pointer is used, valid or otherwise, is undefined.

 

RETURN VALUE

On success, a pointer is returned to the allocated memory. On error, NULL is returned. errno will be set based on what the failure of mmap() was due to.

 

SEE ALSO

oprofile(1) , gethugepagesize(3) , get_hugepage_region(3) , libhugetlbfs(7)  

AUTHORS

libhugetlbfs was written by various people on the libhugetlbfs-devel mailing list.


 

Index

NAME
SYNOPSIS
DESCRIPTION
RETURN VALUE
SEE ALSO
AUTHORS

This document was created by man2html, using the manual pages.
Time: 21:46:21 GMT, April 16, 2011