用于提供页面迁移的系统和方法与流程

文档序号:36229418发布日期:2023-11-30 16:30阅读:60来源:国知局
用于提供页面迁移的系统和方法与流程


背景技术:

1、存储器控制器(包括直接存储器访问(dma)控制器)是将由存储器访问代理(例如,数据处理器)生成的访问转换为计算机存储器可以理解的一个或多个命令的电路。存储器控制器可以被实现为单独芯片或与数据处理器等其他部件集成于单个集成电路芯片上。在后一种情况下,存储器控制器通常被称为集成存储器控制器。集成存储器控制器支持各种总线协议,例如,动态随机存取存储器(dram)总线协议和双倍数据速率动态随机存取存储器(ddr dram)总线协议。存储器与计算资源(例如,中央处理单元(cpu)、图形处理单元(gpu)、数字信号处理器(dsp)等处理器)紧密耦合的需要给系统设计者带来了与存储器容量要求、存储器控制器可用性、存储器生命周期限制以及cpu的存储器带宽可用性相关的挑战。存储器内工作负载和服务器虚拟化等能力推动了对增加存储器容量的需求。此外,cpu(例如,一个或多个核)性能的提高需要每个插槽有更多的存储器通道。例如,存储器容量要求由cpu的数量驱动,以便针对许多工作负载保持平衡的计算资源。

2、分层存储器系统由具有不同等待时间及/或带宽特性的两个或多个存储器区域组成。示例:2插槽系统具有“本地”和“远程”存储器层,即使所有存储器都是传统的dram。业界正在开发分层存储器的新组合,例如,hbm和dram、dram和cxl类型3存储器扩展设备、dram和nvdimm-p。等待时间和带宽差异的一些示例可以包括例如与dram相比具有较高等待时间和不同带宽特性的附接cxl的存储器。hbm可以具有与dram类似的等待时间特性,但具有高得多的带宽。由于存储器层之间的性能差异,需要将频繁使用的页面从较慢存储器层移动到较快层中,将不频繁使用的页面从较快存储器层移动到较慢层中。为了便于管理(例如,将存储器指派给进程),可以将存储器划分成各种大小的页面,例如,4kib、2mib、1gib。使用页面迁移通过最佳地利用较快的存储器层来改善性能。

3、随着多种竞争存储器技术的快速发展,目前还没有明确的最佳技术或解决方案或接口。已经提出纯硬件解决方案,但这将是专有的,不太可能从当前和尚未出现的选项中选出最佳的存储器解决方案。此外,用于页面迁移的纯硬件解决方案可能在某些工作负载上表现良好,但在其他工作负载上表现不佳,并且可能难以根据行为调整操作。此外,随着虚拟化以及管理程序和虚拟机之间增强安全性的需求,纯硬件解决方案可能不够强大,无法满足安全需求。执行页面迁移的其他解决方案使用纯软件解决方案,其可能比纯硬件解决方案更灵活,但软件实现的数据移动的性能将低于硬件实现的数据移动的性能。已知的系统也可能不提供适当的安全性,因为例如管理程序可能无法迁移由高级安全特征保护的客户虚拟机正在使用的页面。


技术实现思路



技术特征:

1.一种用于提供页面在分层存储器之间的页面迁移的方法,包括:

2.根据权利要求1所述的方法,其中,发出所述页面移动命令包括发出命令数据,所述命令数据使得所述硬件数据移动器向不同存储器层提供多个存储器页面的安全嵌套分页批量移动。

3.根据权利要求1所述的方法,其中,发出所述页面移动命令包括发出命令数据,所述命令数据使得所述硬件数据移动器提供由客户操作系统安全地拥有的一个或多个存储器页面的安全嵌套分页移动。

4.根据权利要求1所述的方法,其中,发出所述页面移动命令包括发出命令数据,所述命令数据使得所述硬件数据移动器将能够由非安全嵌套分页系统中的直接存储器访问设备主动地使用的一个或多个页面的内容移动到未加密的或使用操作系统或管理程序拥有的密钥加密的存储器。

5.根据权利要求1所述的方法,其中,发出所述页面移动命令包括发出命令数据,所述命令数据使得所述硬件数据移动器提供移动能够由直接存储器访问设备主动地使用的页面的i/o设备页面的安全嵌套分页移动。

6.根据权利要求1所述的方法,包括在所述操作系统和所述硬件数据移动器之间提供应用程序接口(api),所述api向所述硬件数据移动器提供所述移动命令并且向所述操作系统提供从hdm返回的页面迁移数据。

7.根据权利要求1所述的方法,包括延迟输入输出存储器管理单元地址映射,同时服务所述页移动命令。

8.一种用于提供页面在分层存储器之间的页面迁移的装置,包括:

9.根据权利要求8所述的装置,其中,所述页面移动命令包括命令数据,所述命令数据使得所述硬件数据移动器向不同存储器层提供多个存储器页面的安全嵌套分页批量移动。

10.根据权利要求8所述的装置,其中,所述页面移动命令包括命令数据,所述命令数据使得所述硬件数据移动器提供由客户操作系统安全地拥有的一个或多个存储器页面的安全嵌套分页移动。

11.根据权利要求8所述的装置,其中,发出所述页面移动命令包括发出命令数据,所述命令数据使得所述硬件数据移动器将能够由非安全嵌套分页系统中的直接存储器访问设备主动地使用的一个或多个页面的内容移动到未加密的或使用操作系统或管理程序拥有的密钥加密的存储器。

12.根据权利要求8所述的装置,其中,所述页面移动命令包括命令数据,所述命令数据使得所述硬件数据移动器提供移动能够由直接存储器访问设备主动地使用的页面的i/o设备页面的安全嵌套分页移动。

13.根据权利要求8所述的装置,其中,所述一个或多个处理器执行所存储的代码,所述代码在被执行时使得所述一个或多个处理器在所述操作系统和所述硬件数据移动器之间提供应用程序接口(api),所述api向所述硬件数据移动器提供所述移动命令并且向所述操作系统提供从hdm返回的页面迁移数据。

14.根据权利要求8所述的装置,包括输入/输出存储器管理单元,所述输入/输出存储器管理单元可操作地耦合到所述硬件数据移动器并且可操作,以与访问所述分层存储器的输入/输出单元接合,并且其中所述硬件数据移动器包括:

15.一种用于在多层存储器系统中提供页面迁移的装置,包括:

16.根据权利要求15所述的装置,其中,所述处理器被配置为处理命令数据,所述命令数据使得所述硬件数据移动器向不同存储器层提供多个存储器页面的安全嵌套分页批量移动。

17.根据权利要求15所述的装置,其中,所述处理器被配置为处理命令数据,所述命令数据使得所述硬件数据移动器提供由客户操作系统拥有的一个或多个存储器页面的安全嵌套分页移动。

18.根据权利要求15所述的装置,其中,所述处理器被配置为处理命令数据,所述命令数据使得所述硬件数据移动器将能够由非安全嵌套分页系统中的直接存储器访问设备主动地使用的一个或多个页面的内容移动到未加密的或使用操作系统或管理程序拥有的密钥加密的存储器。

19.根据权利要求15所述的装置,其中,所述处理器被配置为处理命令数据,所述命令数据使得所述硬件数据移动器提供移动能够由直接存储器地址设备主动地使用的页面的i/o设备页面的安全嵌套分页移动。

20.根据权利要求15所述的装置,其中,所述处理器是安全处理器,所述安全处理器被配置为提供用于安全嵌套页面的页面移动。


技术总结
用于提供页面在分层存储器之间的页面迁移的方法和装置,其识别每个存储器层中频繁访问的存储器页面,并生成指示存储器页面正被访问的频率的页面热度排名信息。方法和装置根据系统中使用的操作系统或管理程序向操作系统或管理程序提供页面热度排名信息,操作系统或管理程序基于页面热度排名信息向硬件数据移动器发出页面移动命令,并且硬件数据移动器响应来自操作系统的页面移动命令将存储器页面移动到不同的存储器层。

技术研发人员:肖恩·T·怀特,菲利普·恩杰
受保护的技术使用者:超威半导体公司
技术研发日:
技术公布日:2024/1/16
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1