英特尔的 Linux 内核测试机器人报告称,主线 Linux 内核的性能提高了 3888.9%。
具体表现为,在 Intel Xeon Platinum (Cooper Lake) 测试服务器上运行的 “will-it-scale.per_process_ops ”可扩展性测试用例的性能提高了 3888.9%。导致性能大幅提升的相关提交是 mm, mmap: limit THP alignment of anonymous mappings to PMD-aligned sizes。
补丁信息确认它将修复之前的一些性能退步,并在特殊情况下带来一些重大提升。
自提交 efa7df3e3bb5(“mm: align larger anonymous mappings on THP boundaries”)以来,没有特定地址提示且至少为 PMD_SIZE 的匿名内存的 mmap() 将与 PMD 对齐,以便从 THP backing page 中受益。 然而,这种变化已被证明会显著降低一些工作负载。[1] 报告了各种规范基准测试中的回归,在某些平台上 cactusBSSN 基准测试的速度下降了 600%。基准测试似乎创建了许多 4632kB 的映射,这些映射在提交 efa7df3e3bb5 之前会合并到一个大的 THP-backed area,现在它们被分割成多个区域,每个区域都与 PMD 边界对齐,中间有间隙。回归的主要原因是基准的内存访问模式因单个区域的对齐边界而受到 TLB 或缓存别名的影响。 另一个已知的回归问题被定位到 commit efa7df3e3bb5 的是 darktable,早期测试表明该补丁也修复了该回归。 要修复回归但仍尝试从 THP 友好的匿名映射对齐中受益,可以添加一个条件,即映射的大小必须是 PMD 大小的倍数,而不是至少是 PMD 大小。如果存在许多 odd-sized mapping(如 cactusBSSN creates),这些映射将不再对齐并留有间隙,而是会自然地再次合并。
更多详情可查看此处。
评论删除后,数据将无法恢复
英特尔发现一行代码可使 Linux 内核性能提高 3888.9%
英特尔的 Linux 内核测试机器人报告称,主线 Linux 内核的性能提高了 3888.9%。
具体表现为,在 Intel Xeon Platinum (Cooper Lake) 测试服务器上运行的 “will-it-scale.per_process_ops ”可扩展性测试用例的性能提高了 3888.9%。导致性能大幅提升的相关提交是 mm, mmap: limit THP alignment of anonymous mappings to PMD-aligned sizes。
补丁信息确认它将修复之前的一些性能退步,并在特殊情况下带来一些重大提升。
更多详情可查看此处。