DOKK / manpages / debian 12 / libmemkind-dev / memkind_hugetlb.3.en
MEMKIND_HUGETLB(3) MEMKIND_HUGETLB MEMKIND_HUGETLB(3)

memkind_hugetlb - hugetlb memory memkind operations.
Note: This is EXPERIMENTAL API. The functionality and the header file itself can be changed (including non-backward compatible changes) or removed.

int memkind_hugetlb_check_available_2mb(struct memkind *kind);
int memkind_hugetlb_get_mmap_flags(struct memkind *kind, int *flags);
void memkind_hugetlb_init_once(void);

The hugetlb memory memkind operations enable memory kinds which use the Linux hugetlbfs file system. For more information about the hugetlbfs see link below.
https://www.kernel.org/doc/Documentation/vm/hugetlbpage.txt

memkind_hugetlb_check_available_2mb() check if there are 2MB pages reserved in the default hugetlbfs. If the kind implements ops.get_mbind_nodemask(), then only the NUMA nodes set by the nodemask are checked, otherwise every NUMA node is checked.

memkind_hugetlb_get_mmap_flags() sets the flags for the mmap() system call such that the hugetlbfs is utilized for allocations.

memkind_hugetlb_init_once() this function initializes MEMKIND_HUGETLB kind and it should not be called more than once. Note: memkind_hugetlb_init_once() may reserve some extra memory.

Copyright (C) 2014 - 2020 Intel Corporation. All rights reserved.

memkind(3), memkind_arena(3), memkind_default(3), memkind_hbw(3), memkind_pmem(3), jemalloc(3), mbind(2), mmap(2)

2015-04-21 Intel Corporation