我正在尝试理解x86的KVM内存分配器。我正在做这个实验-在新启动的VM上使用mmap分配16 GB的内存(并触摸它),这样主机系统的内存使用量就增加了16 GB(当来宾开始接触mmaped区域时,主机开始将该内存分配给qemu )。在VM上分配内存时,我还使用perf stat计算qemu-system进程在分配期间生成的页面错误。我观察到qemu进程生成的页面错误数量非常少(在0-300范围内),我预计它会生成4,194,304个页面错误。(16 4KB/4KB,注意-我已经完全禁用了大页)。我错过了什么??
发布于 2021-06-01 17:05:22
内核使用延迟(按需)物理页面分配,将分配推迟到需要时,并避免分配实际上永远不会使用的物理页面。内存映射通常在开始时没有附加物理页面。
cat /proc/sys/vm/nr_hugepageshttps://stackoverflow.com/questions/67122330
复制相似问题