AMD 开源工程师提出了名为“PAN”(Process Adaptive autoNUMA)的新内核功能。AMD 显示的早期数据表明,PAN 可以在一定程度上帮助其最新服务器硬件上的某些工作负载提高性能。
PAN 是一种计算 AutoNUMA 扫描周期的自适应算法。AMD 的 Bharata B Rao 在征求意见稿 (RFC) Linux 内核补丁系列中进一步解释:
在这种新方法(进程自适应 autoNUMA 或 PAN)中,我们在每个进程级别收集 NUMA 故障统计信息,以便更好地捕获应用程序行为。
此外,该算法根据远程故障率学习和调整扫描率。通过不坚持静态阈值,该算法可以更好地响应不同的工作负载行为。
由于一个进程的线程已经被视为一个组,我们在任务的[内存管理]中添加了一堆指标来跟踪各种类型的故障并从中得出扫描率。
新的每进程故障统计信息仅有助于计算每进程扫描周期,而现有的每线程统计信息继续有助于 numa_group 统计信息,最终确定跨节点迁移内存和线程的阈值。
PAN 为 Linux 构建带来了一些性能优。与默认的 Linux 内核构建相比,使用 PAN 的 Linux 内核构建在 Graph500 互连 HPC 基准测试中受益高达 14.93%,NAS 基准测试速度提高了 8%,PageRank 提高了约 0.37%,以及其他一些不到 1% 的提升。
到目前为止,还没有其他内核开发人员对 Process Adaptive autoNUMA 提案发表评论,但感兴趣的可以查看 PAN 的 RFC ,了解有关此功能的更多信息或对其进行测试。目前,PAN 改进 Linux NUMA 行为的新代码不到 400 行。
本文转自OSCHINA
本文标题:AMD 开发了一个有助于提升 Linux 性能的“PAN”功能
本文地址:https://www.oschina.net/news/180924/amd-pan-linux-rfc