用以存取异质存储器组件的存储器虚拟化制造技术

技术编号:25696676 阅读:31 留言:0更新日期:2020-09-18 21:08
本发明专利技术涉及一种计算系统,其具有:至少一个总线;多个不同存储器组件;及处理装置,其通过所述至少一个总线与所述多个存储器组件可操作地耦合。所述不同存储器组件包含具有不同存储器存取速度的第一存储器及第二存储器。所述计算系统进一步包含存储器虚拟器,所述存储器虚拟器可操作地:存储由所述处理装置用于存取存储器的第一地址与用于存取所述第一存储器及所述第二存储器的第二地址之间的地址映射;监测所述第一存储器及第二存储器的使用;基于所述使用调整所述地址映射以改进所述处理装置在涉及所述第一存储器及所述第二存储器的存储器存取时的速度;及根据对所述地址映射的调整交换所述第一存储器及所述第二存储器中的数据内容。

【技术实现步骤摘要】
【国外来华专利技术】用以存取异质存储器组件的存储器虚拟化相关申请案本申请案主张于2018年8月3日申请且标题为“用以存取异质存储器组件的存储器虚拟化(MemoryVirtualizationforAccessingHeterogeneousMemoryComponents)”的序列号为16/054,719的美国专利申请案及于2018年2月5日申请且标题为“用于两层存储器系统的存储器虚拟化(MemoryVirtualizationforTwoTierMemorySystems)”的序列号为62/626,491的临时美国专利申请案的申请日期的权益,所述申请案的全部揭示内容特此以引用的方式并入本文中。本申请案涉及于2018年7月11日申请且标题为“用以加速存储器存取的预测分页(PredictivePagingtoAccelerateMemoryAccess)”的序列号为16/032,331的美国专利申请案及于2018年7月13日申请且标题为“存储器系统中的隔离性能域(IsolatedPerformanceDomainsinaMemorySystem)”的序列号为16/035,469的美国专利申请案,所述申请案的全部揭示内容特此以引用的方式并入本文中。
本文中揭示的至少一些实施例大体上涉及存储器系统,且更特定来说(但非限制地)涉及用以存取异质存储器组件的存储器虚拟化。
技术介绍
存储器子系统可为存储器模块,例如双列直插存储器模块(DIMM)、小型DIMM(SO-DIMM)或非易失性双列直插存储器模块(NVDIMM)。存储器子系统可为存储系统,例如固态硬盘(SSD)或硬盘驱动(HDD)。存储器子系统可包含存储数据的一或多个存储器组件。存储器组件可为例如非易失性存储器组件及易失性存储器组件。存储器组件的实例包含存储器集成电路。一些存储器集成电路是易失性的且需要电力来维持经存储数据。一些存储器集成电路是非易失性的且甚至在未被供电时仍可保留经存储数据。非易失性存储器的实例包含快闪存储器、只读存储器(ROM)、可编程只读存储器(PROM)、可擦除可编程只读存储器(EPROM)及电可擦除可编程只读存储器(EEPROM)存储器等。易失性存储器的实例包含动态随机存取存储器(DRAM)及静态随机存取存储器(SRAM)。一般来说,主机系统可利用存储器子系统来将数据存储于存储器组件处及从存储器组件检索数据。例如,计算机可包含主机系统及附接到主机系统的一或多个存储器子系统。主机系统可具有与一或多个存储器子系统通信以存储及/或检索数据及指令的中央处理单元(CPU)。用于计算机的指令可包含操作系统、装置驱动程序及应用程序。操作系统管理计算机中的资源且为应用程序提供常见服务,例如存储器分配及资源的分时。装置驱动程序操作或控制计算机中的特定类型的装置;且操作系统使用装置驱动程序来提供由所述类型的装置提供的资源及/或服务。计算机系统的中央处理单元(CPU)可运行操作系统及装置驱动程序以将服务及/或资源提供到应用程序。中央处理单元(CPU)可运行使用服务及/或资源的应用程序。例如,实施一类型的计算机系统应用程序的应用程序可指示中央处理单元(CPU)将数据存储于存储器子系统的存储器组件中及从存储器组件检索数据。计算机系统的操作系统可允许应用程序使用虚拟存储器地址来将数据存储于计算机系统的一或多个存储器子系统的存储器组件中或从计算机系统的一或多个存储器子系统的存储器组件检索数据。操作系统将连接到计算机系统的中央处理单元(CPU)的一或多个存储器子系统的虚拟地址映射到物理地址。操作系统使用存储器子系统的物理地址实施虚拟地址处指定的存储器存取。虚拟地址空间可被划分为页。可将虚拟存储器页映射到存储器子系统中的物理存储器页。操作系统可使用分页技术以经由存储器模块中的存储器页存取存储装置中的存储器页。在不同时间例子,存储器模块中的相同存储器页可用作存取存储装置中的不同存储器页或计算机系统中的另一存储装置的代理。计算机系统可包含用于建立或布建虚拟机的超管理器(或虚拟机监测器)。虚拟机是使用计算机系统中可用的资源及服务虚拟地实施的计算装置。超管理器将虚拟机呈现给操作系统,宛如虚拟机的组件是专用物理组件一样。客户操作系统在虚拟机中运行以依与运行于计算机系统中的主机操作系统类似的方式管理虚拟机中可用的资源及服务。超管理器允许多个虚拟机共享计算机系统的资源且允许虚拟机在计算机上基本上彼此独立地操作。附图说明在随附图式的图中通过实例且非限制的方式说明实施例,其中相似参考指示类似组件。图1说明根据本专利技术的一些实施例的具有存储器子系统的实例计算系统。图2展示根据本文中揭示的至少一些实施例的具有不同类型的存储器及用于虚拟化存储器存取的运行指令的计算系统。图3展示具有经配置以虚拟化经由超管理器进行的存储器存取的装置驱动程序的系统。图4展示耦合到装置驱动程序以通过虚拟化改进存储器存取的预测引擎。图5展示用于虚拟化存储器存取的方法。图6是其中可操作本专利技术的实施例的实例计算机系统的框图。具体实施方式本专利技术的至少一些方面涉及一种可改进具有异质存储器组件的计算机系统中的存储器存取性能的存储器虚拟化技术。存储器子系统在下文中也称为“存储器装置”。存储器子系统的实例是经由存储器总线连接到中央处理单元(CPU)的存储器模块。存储器模块的实例包含双列直插存储器模块(DIMM)、小型DIMM(SO-DIMM)、非易失性双列直插存储器模块(NVDIMM)等。存储器子系统的另一实例是经由外围互连(例如,输入/输出总线、存储局域网络)连接到中央处理单元(CPU)的存储装置。存储装置的实例包含固态硬盘(SSD)、快闪驱动、通用串行总线(USB)快闪驱动及硬盘驱动(HDD)。在一些实施例中,存储器子系统是提供存储器功能及存储功能两者的混合存储器/存储子系统。一般来说,主机系统可利用包含一或多个存储器组件的存储器子系统。主机系统可提供待存储于存储器子系统处的数据且可请求待从存储器子系统检索的数据。存储器子系统可具有在不同方面中提供不同优点的不同类型的存储器组件。例如,存储器模块可具有用于快速存取的易失性DRAM及用于持续性存储的非易失性存储器。然而,应用程序编程不同类型的存储器组件的使用以充分利用由不同类型的存储器组件提供的不同优点是一项挑战。本专利技术的至少一些方面通过虚拟化对不同类型的存储器组件的存储器存取使得从应用程序屏蔽存储器组件的差异而解决上述及其它缺陷。通过存储器装置驱动程序进行对不同类型的存储器组件的存储器存取。基于当前及/或过去的存储器使用模式,装置驱动调整将哪些数据存储于哪些存储器组件中以在当前时段内改进整个存储器子系统的性能。装置驱动基于过去或当前的使用模式及/或预测使用模式自动管理不同类型的存储器组件的使用,使得可充分利用不同类型的存储器组件的不同优点。图1说明根据本专利技术的一些实施例的具有存储器子系统110的实例计算系统100。存储器子系统110可包含媒体,例如存储器组件109A到本文档来自技高网...

【技术保护点】
1.一种计算系统,其包括:/n至少一个总线;/n多个存储器组件,其包括第一存储器及第二存储器,其中所述第一存储器及所述第二存储器在经由所述至少一个总线存取时具有不同速度;/n处理装置,其通过所述至少一个总线与所述多个存储器组件可操作地耦合;/n其中所述计算系统进一步包括存储器虚拟器,所述存储器虚拟器可操作地:/n存储由所述处理装置用于存取存储器的第一地址与用于存取所述第一存储器及所述第二存储器的第二地址之间的地址映射;/n监测所述第一存储器及所述第二存储器的使用;/n基于所述使用调整所述地址映射以改进所述处理装置在涉及所述第一存储器及所述第二存储器的存储器存取时的速度;及/n根据对所述地址映射的调整交换所述第一存储器及所述第二存储器中的数据内容。/n

【技术特征摘要】
【国外来华专利技术】20180205 US 62/626,491;20180803 US 16/054,7191.一种计算系统,其包括:
至少一个总线;
多个存储器组件,其包括第一存储器及第二存储器,其中所述第一存储器及所述第二存储器在经由所述至少一个总线存取时具有不同速度;
处理装置,其通过所述至少一个总线与所述多个存储器组件可操作地耦合;
其中所述计算系统进一步包括存储器虚拟器,所述存储器虚拟器可操作地:
存储由所述处理装置用于存取存储器的第一地址与用于存取所述第一存储器及所述第二存储器的第二地址之间的地址映射;
监测所述第一存储器及所述第二存储器的使用;
基于所述使用调整所述地址映射以改进所述处理装置在涉及所述第一存储器及所述第二存储器的存储器存取时的速度;及
根据对所述地址映射的调整交换所述第一存储器及所述第二存储器中的数据内容。


2.根据权利要求1所述的计算系统,其中所述第一存储器比所述第二存储器快;且所述处理装置针对所述计算系统中的存储器存取请求的一部分经由所述至少一个总线存取所述第二存储器而不存取所述第一存储器。


3.根据权利要求1所述的计算系统,其中所述第一存储器比所述第二存储器快;所述第一存储器及所述第二存储器共享到所述总线的共同物理主机接口;所述第一存储器及所述第二存储器安置于相同存储器模块中;所述总线是存储器总线;且所述存储器模块是双列直插存储器模块DIMM。


4.根据权利要求3所述的计算系统,其中所述存储器模块包含至少部分实施所述存储器虚拟器的控制器;且响应于存取当前在所述第二存储器中的存储器位置的请求,所述存储器虚拟器响应于确定在所述第一存储器的一部分中存取数据内容不如所述第二存储器的一部分频繁而指示所述控制器在所述第一存储器的所述部分与所述第二存储器的所述部分之间交换数据内容。


5.根据权利要求4所述的计算系统,其中在所述存储器模块内执行所述数据内容在所述第一存储器的所述部分与所述第二存储器的所述部分之间的交换,而不经过所述总线。


6.根据权利要求4所述的计算系统,其中在存取所述第二存储器中的所述存储器位置之后执行所述数据内容在所述第一存储器的所述部分与所述第二存储器的所述部分之间的所述交换。


7.根据权利要求3所述的计算系统,其中所述存储器虚拟器包括运行于所述处理装置中的所述存储器模块的装置驱动程序。


8.根据权利要...

【专利技术属性】
技术研发人员:A·拉伊P·R·玛哈拉纳G·阿南德
申请(专利权)人:美光科技公司
类型:发明
国别省市:美国;US

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1