In modern server CPUs, last-level cache (LLC) is a critical hardware resource that exerts significant influence on the performance of the workloads, and how to manage LLC is a key to the performance isolation and QoS in the cloud with multi-tenancy. In this paper, we argue that besides CPU cores, high-speed network I/O is also important for LLC management. This is because of an Intel architectural innovation -- Data Direct I/O (DDIO) -- that directly injects the inbound I/O traffic to (part of) the LLC instead of the main memory. We summarize two problems caused by DDIO and show that (1) the default DDIO configuration may not always achieve optimal performance, (2) DDIO can decrease the performance of non-I/O workloads which share LLC with it by as high as 32%. We then present IOCA, the first LLC management mechanism for network-centric platforms that treats the I/O as the first-class citizen. IOCA monitors and analyzes the performance of the cores, LLC, and DDIO using CPU's hardware performance counters, and adaptively adjusts the number of LLC ways for DDIO or the tenants that demand more LLC capacity. In addition, IOCA dynamically chooses the tenants that share its LLC resource with DDIO, to minimize the performance interference by both the tenants and the I/O. Our experiments with multiple microbenchmarks and real-world applications in two major end-host network models demonstrate that IOCA can effectively reduce the performance degradation caused by DDIO, with minimal overhead.
翻译:在现代服务器CPU中,最后一级缓存(LLC)是一个重要的硬件资源,对工作量的绩效有重大影响,而管理LLC是多耐久云层中业绩孤立和QOS的关键。在本文中,我们认为,除了CPU核心外,高速网络一/O对于LLC管理也很重要。这是因为Intel建筑创新 -- -- Data Direct I/O(DDIO) -- -- 直接将进入的I/O(部分)传输到(部分)LLLC,而不是主要记忆。我们总结了DDIO造成的两个问题,并表明:(1) 默认的DDIO配置可能并不总是达到最佳性能,(2) DDIO可以降低非I/O工作量的绩效,而与LIC/O(DIO)相比,高超速网络的运行率比值高达32%。我们然后介绍ICOCA,这是将I/O(O)直接将I/O(部分)直接输入到(部分)LLIC)的运行情况直接分析。IOC(LLOC)和DIO(DO)的运行模式可以减少核心、LLLO(LO)实际性能的运行能力,通过C)对ILO(ILO)的升级和(IDDDDDR)的运行能力进行调整。