AutoNUMA NUMA hinting fault numa_balancing

3860阅读 0评论2014-07-07 humjb_1983
分类:LINUX

redhat提出的新的机制,用于平衡Numa节点间的内存访问,基本思想是:定期统计各进程的内存访问情况,
并unmapping pages,然后触发NUMA hinting fault,在page fault中重新均衡内存访问,目的是使运行
进程的CPU尽量访问本地节点上的内存,提升性能。
numa_balancing

Enables/disables automatic page fault based NUMA memory
balancing. Memory is moved automatically to nodes
that access it often.

Enables/disables automatic NUMA memory balancing. On NUMA machines, there
is a performance penalty if remote memory is accessed by a CPU. When this
feature is enabled the kernel samples what task thread is accessing memory
by periodically unmapping pages and later trapping a page fault. At the
time of the page fault, it is determined if the data being accessed should
be migrated to a local memory node.

The unmapping of pages and trapping faults incur additional overhead that
ideally is offset by improved memory locality but there is no universal
guarantee. If the target workload is already bound to NUMA nodes then this
feature should be disabled. Otherwise, if the system overhead from the
feature is too high then the rate the kernel samples for NUMA hinting
faults may be controlled by the numa_balancing_scan_period_min_ms,
numa_balancing_scan_delay_ms, numa_balancing_scan_period_max_ms,
numa_balancing_scan_size_mb, and numa_balancing_settle_count sysctls.
上一篇:内存屏障相关--barrier(),mb(),smp_mb(),乱序,内存一致性
下一篇:pci配置空间中的bar基址是谁写入的?