一句话:提出 WASP,根据工作负载特征自动启停页表自复制,以降低 NUMA 服务器的页表 NUMA 效应。
页表自复制(PTSR)被提出用于降低 NUMA 服务器上大内存工作负载的页表 NUMA 效应,但其是否提升性能取决于应用特征及共置应用,用户难以判断,现有方案只能手动启停。针对该问题,本文提出 WASP(Workload-Aware Self-Replication),自动决定是否启用 PTSR。WASP 引入两类技术:一是选取一组在多数处理器架构上普遍可用的指标,用于判断 PTSR 应否启用;二是设计分层且渐进的机制,利用这些指标在负载执行期间自动启停 PTSR。作者在 Linux 中实现 WASP,并在 x86 与 ARM NUMA 服务器上评估。结果表明,WASP 能根据工作负载特征成功自动启停 PTSR,并取得至少与手动启用 PTSR 相当的性能提升。
Recently, page-table self-replication (PTSR) has been proposed to reduce the page-table caused NUMA effect for large-memory workloads on NUMA servers. However, PTSR may improve or hurt performance of an application, depending on its characteristics and the co-located applications. This is hard for users to know, but current PTSR can only be manually enabled/disabled by users. To address this issue, we propose WASP (Workload-Aware Self-Replication) to automatically enable/disable PTSR to reduce the page-table caused NUMA effect. WASP innovates two techniques. First, it identifies a set of indicators, which are generally available on most processor architectures, to indicate if PTSR should be enabled/disabled. Second, WASP devises a hierarchical as well as gradual mechanism using these indicators to enable/disable PTSR automatically for a specific workload to reduce the page-table caused NUMA effect during its execution. We implement WASP in Linux and evaluate it on x86 and ARM NUMA servers. Experimental results show that WASP can automatically enable/disable PTSR successfully according to workload characteristics, achieving at least the same performance improvement as that obtained by manually enabling PTSR on both x86 and ARM NUMA servers.