分层内存系统的灵活页面管理外文翻译资料

 2022-12-20 18:48:12

英语原文共 15 页,剩余内容已隐藏,支付完成后下载完整资料


分层内存系统的灵活页面管理

摘要

紫燕

罗格斯大学和NVIDIA

ziy@nvidia.com

大卫·尼兰斯

NVIDIA

dnellans@nvidia.com

丹尼尔劳斯蒂格

NVIDIA

dlustig@nvidia.com

Abhishek Bhattacharjee耶鲁大学abhishek@cs.yale.edu

CCS概念bull;计算机系统组织→

软件控制的异构存储器系统具有提高计算系统的性能和成本效率的潜力。但是,如果操作系统(OS)中的高效页面管理策略和机制支持,它们只能实现此承诺。当前的OS实现不支持异构存储器之间的数据的有效分层。相反,它们依赖昂贵的内存脱机或将数据交换到磁盘,作为在内存节点之间分析和迁移热数据或冷数据的方法。他们还在桌面上留下了许多优化;例如,不利用多线程硬件来最大化页面迁移吞吐量,导致可用内存带宽利用率高达95%。为了弥补这些缺点,我们提出并实现了一个通用的OS集成多级存储器管理系统,该系统将当前的OS页面跟踪结构重新连接到存储器之间的层级页面,而无需额外的监视开销。我们通过四个额外的优化来增强这个系统:对透明的大页面迁移的本机支持,页面的多线程迁移,多个页面的并发迁移以及页面的对称交换。这些优化相结合,大大减少了内核软件开销,并将原始页面迁移吞吐量提高了15倍以上。在Linux中实施并在x86,Power和ARM64系统上进行评估,我们对异构内存的操作系统支持可将应用程序性能提高40%,超过基线Linux,适用于使用多个实际内存密集型工作负载的套件级别分解记忆系统。

times;

允许将个人或教室使用的全部或部分作品的数字或硬拷贝免费授予,前提是副本不是为了利润或商业利益而制作或分发的,并且副本承担此通知并在第一页上完整引用。必须尊重除ACM之外的其他人拥有的此项工作的组件的版权。允许使用信用抽象。要以其他方式复制或重新发布,在服务器上发布或重新分发到列表,需要事先获得特定许可和/或费用。请求权限来自permissions@acm.org。

ASPLOS 19,2019年4月13日至17日,美国罗得岛州普罗维登斯

copy;2019计算机协会。ACM ISBN 978-1-4503-6240-5 / 19/04。..$ 15.00

https://doi.org/10.1145/3297858.3304024

异构(混合)系统;bull;软件及其工程→虚拟内存。

键词页面迁移;操作系统;异构内存管理

ACM参考格式:

Zi Yan,Daniel Lustig,David Nellans和Abhishek Bhattacharjee。2019.分层存储系统的灵活页面管理。2019年编程语言和操作系统的架构支持(ASPLOS 19),2019年4月13日至17日,美国罗得岛州普罗维登斯。ACM,纽约,纽约,美国,15 页面。https://doi.org/10.1145/3297858. 3304024

1 介绍

现代计算系统正在拥抱异质性

他们的处理和记忆系统。处理器专注于提高性能和/或能效,CPU,GPU和加速器推动了指令和数据级并行的界限。内存系统正在结合新兴技术的最佳属性,这些属性可针对延迟,带宽,容量或成本进行优化。例如,英特尔的Knights Landing使用一种称为多通道DRAM(MCDRAM)的高带宽内存以及DDR4内存来实现高带宽和高容量[27, 28].非易失性3D XPoint内存已经商业化用于下一代数据库系统,分解内存可能是刀片服务器容量扩展的有前景的解决方案[41, 50].IBM和NVIDIA最近都推出了包含高带宽GPU内存和高容量CPU内存的超级计算机,CPU和GPU都采用异构内存[29, 38, 57, 58, 66, 67].

数字1 图1说明了内存系统架构师和OS设计人员将来可能需要考虑的抽象示例。这些系统由连接到多种类型内存的计算节点(CPU,GPU或两者)组成,具有不同的延迟,带宽和/或容量属性。当然,具体配置因系统而异。当程序导航不同的执行阶段时,关键操作系统支持需要能够实现有效移动数据的愿景,每个阶段都具有潜在的不同

128GB / s的

90

80

记忆

节点

DDR4

容量:中等

70

60

时间(我们)

50

1024GB /秒

64GB / s的

16GB / s的

节点

节点

节点

记忆

分解记忆

容量:大

记忆

3D XPoint

容量:XLarge

非易失性

记忆

HBM

容量:小

中央处理器

40

30

20

310

0

单基页

0.04GB /秒

4KB

记忆

记忆

记忆

记忆

2500

2000

1500

1000

500

0

2MB (512 4KB)

3

3

GB /秒

0.75

GB /秒

0.75

拆分1 THP迁移

512个基页(THP等效)

页面大小

迁移准备。获取新页面取消映射页面重新映射页面迁移清理

Syscall退出

放回新页面

清理

3

检查烫发。准备过程。锁定页面

复制页面

Syscall输入表单页面列表拆分大页面改变映射

放弃旧页面

存储退货Vals

2MB

1.具有4个技术节点的假设的未来多存储器系统,全部暴露为操作系统的非均匀存储器节点。

分门别类

记忆

容量:大

工作集,是高效的页面管理和迁移。无论配置如何,为了优化性能,理想情况下最热门的页面将放置在最快的内存节点(在延迟或带宽方面),直到该节点已满,下一个最热的页面将被填充到第二快的节点中它的能力,等等​​。然后,当程序执行时,必须根据其热度不断重新组织这些页面,以保持最大的工作负载性能。

不幸的是,当今系统中的页面迁移具有很高的开销,并且效率低得惊人。过去的工作和最近的提议主要集中在减少硬件方面的开销。一些增加TLB覆盖率以分摊迁移数据的TLB未命中罚分[6, 13, 17, 19, 25, 33,

6062, 65, 74和其他人减轻由页面迁移的正确性执行机制(例如,TL​​B一致性)引起的性能后果[3, 5, 34, 71, 80].我们进行了一项实验,在该实验中,我们在两个内存节点之间移动了页面,并且每个本地节点具有比插槽间互连更多的可用内存带宽。在从不同的内存节点分配内存后,我们测量了几种类型的跨套接字页面迁移的成本分解和吞吐量。数字2 显示了当今在Linux上迁移不同页面大小时实现的成本细分和吞吐量。对于单基页迁移,大部分时间都花在内核内存管理和同步例程中。实际的页面副本只消耗了一小部分时间。因此,即使硬件具有19.2GB / s的跨套接字内存带宽,有效迁移吞吐量也只有40MB / s(参见表1 我们的实验平台配置)。我们还将要迁移的页面数量扩展到512,与大页面大小(2MB)相匹配

2.迁移单个4KB页面,512个连续基页以及拆分和迁移2MB THP的页面迁移成本细分。(图最好用彩色看。)

在多次迁移中分摊软件开销。在这种情况下,吞吐量确实可以扩展到750MB / s,但这仍然只是峰值硬件带宽的5%。为了研究页面迁移的潜在改进,我们分析了系统的数据拷贝吞吐量(在章节中描述)4.1) 具有不同的线程数和数据大小,包括2MB。数字3 显示现有的页面迁移吞吐量

比使用2MB数据大小可实现的速度慢10,并且传输数据大小越大,差距越大。

times;

为了消除页面迁移瓶颈,我们提出了一组四个优化:透明的大页面迁移,并行化数据复制,并发多页面迁移和页面对称交换。在这些机制的基础上,我们构建了一个整体的多级内存解决方案,使用现有的OS活动/非活动页面列表直接在异构内存之间移动数据,从而消除了当前系统中软件开销的另一个主要来源。我们工作的新颖贡献如下:

  1. 我们表明,将当前不可移动的透明大页面(THP)打破到可移动的基页中会降低THP的有效性。我们还演示了现有的基页迁移仅实现了比硬件线速率低一个数量级的吞吐量。我们通过实现本机大页面(THP)迁移来解决这个问题,该迁移在Linux基线上将迁移吞吐量提高了2.8,同时还具有改善TLB覆盖率的副作用。

times;

  1. 我们的额外页面迁移优化使我们的原生THP迁移的吞吐量提高了5.2倍

15

内存管理

内存维护

系统调用

移动页 ()

机制

分配新页面

取消映射旧页面和TLB失

剩余内容已隐藏,支付完成后下载完整资料


资料编号:[19640],资料为PDF文档或Word文档,PDF文档可免费转换为Word

您需要先支付 30元 才能查看全部内容!立即支付

课题毕业论文、外文翻译、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。