arXivDaily arXiv每日学术速递 周一至周五更新
arXiv 2303.08396cs.DCcs.AR
收藏

面向超大规模场景的工作负载行为驱动的内存子系统设计

Workload Behavior Driven Memory Subsystem Design for Hyperscale

Suyash Mahar, Hao Wang, Wei Shu, Abhishek Dhanotia

AI总结:

针对云工作负载与通用基准行为不匹配、服务器架构未优化的问题,本文提出MemProf内存剖析工具,基于其对三类停顿原因的分析,提出共享微架构、高带宽小容量内存层等优化方案,并构建内存追踪工具提升预取器性能。

摘要:

超大规模运营商在大规模服务器集群上运行各类服务,为全球数十亿用户提供服务。然而,这些服务的运行行为与常用的基准测试套件存在差异,导致服务器架构未能针对云工作负载进行优化。随着数据中心成为服务器处理器的主要市场,通过更好地理解云工作负载的行为来优化服务器处理器,已变得至关重要。为解决这一问题,本文提出了MemProf——一款内存剖析工具,用于剖析云工作负载中导致停顿的三大主要原因:代码取指、内存带宽和内存延迟。我们使用MemProf来理解云工作负载的行为,并提出并评估了有助于提升云工作负载性能的微架构与内存系统设计改进方案。\nMemProf的代码分析显示,云工作负载会在多个CPU核心上执行相同的代码。基于这一发现,我们提出了共享式微架构结构:共享L2 I-TLB(指令翻译旁视缓冲器)和共享L2缓存。接下来,为缓解内存带宽导致的停顿,我们通过分析工作负载的内存带宽分布发现,仅少数页面贡献了系统的大部分带宽。我们利用这一发现评估了一种新型高带宽、小容量内存层级,结果表明其性能比当前基准配置高出1.46倍。最后,我们研究了改善云工作负载内存延迟的方法。使用MemProf的剖析结果显示,作为降低内存延迟的常用方案,L2硬件预取器的覆盖率极低,却消耗了大量内存带宽。为提升硬件预取器的性能,我们构建了一个内存追踪工具,用于收集并验证生产环境的内存访问轨迹。

英文摘要:

Hyperscalars run services across a large fleet of servers, serving billions of users worldwide. These services, however, behave differently than commonly available benchmark suites, resulting in server architectures that are not optimized for cloud workloads. With datacenters becoming a primary server processor market, optimizing server processors for cloud workloads by better understanding their behavior has become crucial. To address this, in this paper, we present MemProf, a memory profiler that profiles the three major reasons for stalls in cloud workloads: code-fetch, memory bandwidth, and memory latency. We use MemProf to understand the behavior of cloud workloads and propose and evaluate micro-architectural and memory system design improvements that help cloud workloads' performance. MemProf's code analysis shows that cloud workloads execute the same code across CPU cores. Using this, we propose shared micro-architectural structures--a shared L2 I-TLB and a shared L2 cache. Next, to help with memory bandwidth stalls, using workloads' memory bandwidth distribution, we find that only a few pages contribute to most of the system bandwidth. We use this finding to evaluate a new high-bandwidth, small-capacity memory tier and show that it performs 1.46x better than the current baseline configuration. Finally, we look into ways to improve memory latency for cloud workloads. Profiling using MemProf reveals that L2 hardware prefetchers, a common solution to reduce memory latency, have very low coverage and consume a significant amount of memory bandwidth. To help improve hardware prefetcher performance, we built a memory tracing tool to collect and validate production memory access traces.

机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。

↑