中文

CARGO:面向网络受限数据中心负载的上下文增强关键区域卸载

硬件体系结构 2020-08-18 v1

摘要

网络受限应用,如执行 OLTP 查询的数据库服务器或为动态 Web 应用存储对象的缓存服务器,是消费者和企业日常使用的基础服务。这些服务运行于大型数据中心,并需以高概率满足预定义的服务水平目标(SLO)或延迟目标。因此,高效的数据中心应用应在功耗与性能方面优化其执行。然而,为支持大规模数据存储,这些负载大量使用指针连接的数据结构(例如哈希表、大扇出树、trie)并表现出较差的指令级与内存级并行性。我们的实验表明,由于较长的内存访问延迟,这些负载长时间占用处理器资源(例如 ROB 表项、RS 缓冲、LS 队列表项等),延迟了后续请求的处理。延迟执行不仅增加请求处理延迟,还严重影响应用吞吐量与功耗效率。为克服该限制,我们提出 CARGO,一种在请求等待处理器资源可用时,于网络接口卡(NIC)上执行应用关键路径上选定指令,从而重叠排队延迟与请求处理的新型机制。我们的机制动态识别关键指令并包含计算长延迟内存访问所需的寄存器状态。这种上下文增强的关键区域常在核心开始执行前于 NIC 上执行,有效地提前预取数据。在多种交互式数据中心应用中,我们的方案将延迟、吞吐量和功耗效率分别提升 2.7X、2.7X 和 1.5X,同时带来适度的存储开销。

关键词

引用

@article{arxiv.2008.07171,
  title  = {CARGO : Context Augmented Critical Region Offload for Network-bound datacenter Workloads},
  author = {Siddharth Rai and Trevor E. Carlson},
  journal= {arXiv preprint arXiv:2008.07171},
  year   = {2020}
}