相关疑难解决方法(0)

使用mmap和madvise用于大页面

我想在Linux机器使用的大页面上分配内存.我看到有两种方法可以做到这一点,使用mmapmadvise.

也就是说,使用MAP_HUGETLB带有mmap调用的标志-

base_ptr_ = mmap(NULL, memory_size_, PROT_READ | PROT_WRITE, MAP_PRIVATE | MAP_ANONYMOUS | MAP_HUGETLB, -1, 0);
Run Code Online (Sandbox Code Playgroud)

和呼号的MADV_HUGEPAGE旗帜madvise-

madvise(base_ptr_, memory_size_, MADV_HUGEPAGE);
Run Code Online (Sandbox Code Playgroud)

有人可以解释两者之间的区别吗?

c linux memory-management mmap huge-pages

14
推荐指数
1
解决办法
7768
查看次数

标签 统计

c ×1

huge-pages ×1

linux ×1

memory-management ×1

mmap ×1