IT资讯 每秒成功迁移页面数增加 291.7%,Linux 新补丁可让 TLB 批量刷新和复制

upton · 2022-12-28 15:00:11 · 热度: 23

12 月 28 日消息,英特尔工程师 Huang Ying 今天发布了补丁集,在 migrate_pages () 函数中实现页面迁移的批量 TLB 刷新,而且在性能优化方面表现亮眼。

据了解,migrate_pages () 在 Linux Kernel 中负责页面迁移(Page Migration),而页面迁移可以指定一个进程的页面至其指定的内存节点上。它的设计初衷是为了:通过将页面移动到该进程所处的 NUMA 节点上来减少内存访问的延迟。后来内存规整和内存热插拔等场景都使用了此功能。

在 migrate_pages () 函数接收到多个页面之后,英特尔工程师努力支持批量处理 TLB 刷新和复制,同时减少处理器间中断 (IPI) 的数量。

TLB(translation lookaside buffer)可以认为是一块高速缓存。数据 cache 缓存地址 (虚拟地址或者物理地址) 和数据。TLB 缓存虚拟地址和其映射的物理地址。TLB 根据虚拟地址查找 cache,它没得选,只能根据虚拟地址查找。所以 TLB 是一个虚拟高速缓存。

migrate_pages () 函数用于将进程中的所有页面移动到另一组节点。该补丁系列还允许使用 Xeon Scalable Sapphire Rapids 处理器上的英特尔数据流加速器 (DSA) 。

在安装补丁之后,migrate_pages () 测试结果显示 IPI 在测试期间降低了 99.1%,每秒成功迁移的页面数增加了 291.7%。

猜你喜欢:
暂无回复。
需要 登录 后方可回复, 如果你还没有账号请点击这里 注册