DOKK / manpages / debian 12 / libhugetlbfs-bin / ld.hugetlbfs.1.en
LD.HUGETLBFS(1) General Commands Manual LD.HUGETLBFS(1)

ld.hugetlbfs - link a program for huge pages

ld.hugetlbfs [options]

ld.hugetlbfs replaces the normal ld command for linking programs to use hugepages. Under gcc, you should use the option -B /usr/share/libhugetlbfs which tells gcc to look in a non-standard location for the linker. This could be set in the CFLAGS environment variable.

This method of linking an application permits greater flexibility at runtime. Using HUGETLB_ELFMAP, it is possible to control which program segments are placed in hugepages. The following four settings will cause the indicated segments to be placed in hugepages:


HUGETLB_ELFMAP=R Read-only segments (text)
HUGETLB_ELFMAP=W Writable segments (data/BSS)
HUGETLB_ELFMAP=RW All segments (text/data/BSS)
HUGETLB_ELFMAP=no No segments

It is possible to select specific huge page sizes for read-only and writable segments by using the following advanced syntax:


HUGETLB_ELFMAP=[R[=<pagesize>]:[W[=<pagesize>]]

-Wl,--hugetlbfs-link=B

Under binutils 2.16 or older, this option will link the application to store BSS data (only) into hugepages.

-Wl,--hugetlbfs-link=BDT

Under binutils 2.16 or older, this option will link the application to store text, initialized data and BSS data into hugepages.

[DESTDIR|/usr/share]/doc/libhugetlbfs/HOWTO

libhugetlbfs(7), hugectl(8), hugeedit(8)

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

March 12, 2012