数据处理的方法、装置、处理器和混合内存系统制造方法及图纸

技术编号:37142899 阅读:16 留言:0更新日期:2023-04-06 21:51
一种应用于分级内存系统的数据处理方法,该分级内存系统包括不同类型的第一内存介质和第二内存介质,该方法包括:获取该分级内存系统的数据分布;根据该数据分布确定数据迁移方式,数据迁移方式用于根据数据分布实现迁移数据集在不同内存介质之间的迁移处理;并根据上述迁移方式执行迁移数据集的所述迁移处理。通过在分级内存系统中实现分级,并结合数据属性实现冷热数据的分级存储方案,既降低了内存的成本,又保证了数据处理的效率。又保证了数据处理的效率。又保证了数据处理的效率。

【技术实现步骤摘要】
数据处理的方法、装置、处理器和混合内存系统


[0001]本申请涉及计算机领域,具体涉及一种数据处理的方法、装置、处理器和混合内存系统。

技术介绍

[0002]随着多核处理器的发展,单个处理器的核数逐渐增多,而处理器访问内存的内存通道的数量却未随之增长,例如,单个中央处理器(central processing unit,CPU)的最大核数可达 64个,而内存通道数仅为8个,这就导致平均分配给每个处理器核的内存带宽和内存容量随着处理器核数的增长变得越来越小,使得内存性能严重限制CPU的性能发挥,内存墙(memorywall)的问题日益突出。
[0003]为了解决内存墙的问题,提出了一种开放内存接口(open memory interface,OMI),移除CPU中双倍数据速率控制器(double data rate controller,DDRC)和双倍数据速率物理层(double data rate controller physical layer,DDR PHY),并在内存中实现开放内存接口、DDRC 和DDR PHY的功能,上述内存条也称为差分双列直插式内存模组(dual in

line memory module, DDIMM),此时,DDIMM通过开放内存接口与CPU连接。由于移除了CPU中DDRC和DDRPHY,且OMI为基于串行总线接口实现的接口,这就增加了CPU中可用于扩展内存通道的引脚(PIN)的数量,例如,支持开放接口的单个POWER9可提供16个内存通道。
[0004]但是,上述方案中支持OMI的处理器仅支持动态随机存取存储器(dynamic random accessmemory,DRAM)类型的内存颗粒,而该类型的内存颗粒的价格较高,对于大数据(例如, Apache Spark
TM
)、内存型数据库(例如,Redis)或云服务(例如,云基础设施中采用内存超分配机制提供的虚拟机)等需要部署大容量内存的场景而言,成本更高。因此,如何提供一种低成本的内存墙的解决方案成为亟待解决的技术问题。

技术实现思路

[0005]本申请提供了一种数据处理的方法、装置、处理器和混合内存系统,可以提供一种低成本的内存墙的解决方案
[0006]第一方面,提供一种应用于混合内存系统的方法,混合内存系统包括多种不同类型的内存介质,例如,DRAM类型的内存介质和SCM类型的内存介质,处理器可以获取混合内存系统的数据分布;并根据上述数据分布确定数据迁移方式,而数据迁移方式用于根据所述数据分布实现迁移数据集在不同内存介质之间的迁移处理;最后,根据迁移方式执行迁移数据集的所述迁移处理。为了解决高成本的内存墙问题,本申请提出采用不同类型的内存介质构成混合内存系统,并基于数据在不同类型的内存介质之间的数据分布确定数据迁移方式,再结合不用类型的内存介质的属性实现数据迁移,在满足了处理器的算力需求的同时,使能低成本的内存介质,在保证数据处理时延的同时,降低整个混合内存系统的成本。
[0007]可选地,数据分布是指数据在不同类型的内存介质中存储方式,具体可以采用以下两种方式确定:
[0008]方式1,根据数据的冷热程度确定数据分布,即按照数据的冷热程度将其存储在不同类型的存储介质。
[0009]方式2,根据数据的冷热程度和内存介质的物理属性确定,其中,物理属性包括时延、成本、容量和寿命中至少一种。
[0010]在一种可能的实现方式中,混合内存系统还包括多个处理器,在初始化节点,可以为每个处理器分配内存资源,并利用LRU链表记录内存页的冷热程度,再基于上述冷热程度执行数据的迁移处理。具体地,先获取混合内存系统的内存布局,内存布局包括内存系统中部署的内存的数量和类型;然后,根据内存布局为每个处理器分配内存资源,利用最新最近使用 LRU链表记录每个处理器被分配的内存资源中存储数据的冷热程度,而LRU链表包括活跃清单Active list和不活跃清单Inactive list,其中,Active list用于标识处理器关联的热数据所在内存页的信息,Inactive list用于标识处理器关联的冷数据所在的内存页的信息。通过LRU 链表的管理方式,可以获知内存页中存储数据的冷热程度,进而根据内存页的属性标签执行数据在不同内存介质之间的迁移处理,例如,可以将热数据迁移至时延敏感型的DRAM类型的内存页中,将冷数据迁移至低成本的SCM类型的内存页中,即能降低混合内存系统的成本,又可以保证数据处理的效率。另一方便,对于2M等大页内存而言,LRU的链表管理方式提供了一种内存页访问热度的管理方式,便于内存介质使用过程中,根据数据属性执行合理的迁移操作,提升整个系统的处理效率,降低内存访问的处理时延。
[0011]在另一种可能的实现方式中,利用LRU链表还可以通过扫描请求遍历分级存储系统中与各个处理器关联的不同内存介质中内存页的数据分布,其中,数据分布包括不同内存介质中内存页的状态,内存页的状态包括热页、冷页或空闲页。也即,通过LRU链表的管理可以进一步获知内存页的状态,区分出热页和冷页,进而根据内存页的状态执行数据迁移操作,使得热数据存储在低时延的内存介质中,冷数据存储在低成本的内存介质中,即保证了数据被访问的效率,又降低了整个系统的内存成本。
[0012]在另一种可能的实现方式中,不同内存介质还可以分别构建内存池,每个内存池中分别包括多个大页内存,每个大页内存的大小大于第一阈值。对于内存型数据库、大数据或云服务等场景,通过构建大页内存池,内存访问以大页为粒度进行访问,与小页内存相比,每次读取的数据量随之增多,提升了数据处理的效率。而且,在不同类型的内存介质中,还可以进一步结合内存分级机制进行数据迁移,能够进一步提升整个系统的处理速度,同时,降低内存成本。
[0013]在另一种可能的实现方式中,内存介质中数据分布还可以周期性通过扫描请求统计不同类型内存介质中各个内存页的冷热程度。通过周期性统计不同类型内存介质中各个内存页的冷热程度,可以动态的实现数据迁移处理过程,使得数据的冷热属性与内存介质的低时延、低成本等特性关联,保证经常被访问的热数据存储在低时延的内存介质中,提升数据被访问的效率,同时,对于被访问次数少的冷数据,则存储在低成本的内存介质中,由此减低整个系统中内存介质的成本。
[0014]在另一种可能的实现方式中,每个内存页的冷热程度可以通过以下方式获取:在单位周期内,统计各个内存页中数据被读取的次数;当任意一个内存页中数据被执行一次
读取操作时,该内存页的热度加一,该热度可以指示所述单位周期内该内存页中数据被访问的冷热程度。通过单位周期内对内页中数据被访问次数的统计,可以明确内存页的冷热程度,进而根据数据的冷热属性执行数据迁移操作,合理利用不同类型的内存介质资源。
[0015]在另一种可能的实现方式中,迁移数据集包括第一数据集,第一数据集包括至少一个热数据,热数据为单位周期内数据被读写的次数大于第一阈值的数据。
[001本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据处理方法,其特征在于,所述方法应用于混合内存系统,所述混合内存系统包括多种不同类型的内存介质,所述多种内存介质包括第一内存介质和第二内存介质,所述方法包括:获取所述混合内存系统中数据在不同类型的内存介质中的数据分布;根据所述数据分布确定数据迁移方式,所述数据迁移方式用于根据所述数据分布实现迁移数据集在所述第一内存介质和所述第二内存介质之间的迁移处理;根据所述迁移方式执行所述迁移数据集的所述迁移处理。2.根据权利要求1所述的方法,其特征在于,所述混合内存系统还包括处理器,所述处理器关联最新最近使用LRU链表,所述LRU链表用于记录所述处理器被分配的内存资源中存储数据的冷热程度,所述LRU链表包括活跃清单Active list和不活跃清单Inactive list,所述Active list用于标识所述处理器关联的热数据所在内存页的信息,所述Inactive list用于标识所述处理器关联的冷数据所在的内存页的信息。3.根据权利要求2所述的方法,其特征在于,所述方法还包括:获取扫描请求;根据所述扫描请求遍历所述分级存储系统中与所述第一处理器关联的所述第一内存介质和所述第二内存介质中内存页的所述数据分布,所述数据分布包括所述第一内存介质和所述第二内存介质中内存页的状态,所述内存页的状态包括热页、冷页或空闲页。4.根据权利要求3所述的方法,其特征在于,所述第一内存介质中包括第一大页内存池,所述第二内存介质中包括第二大页内存池,所述第一大页内存池和所述第二大页内存池中的内存页的大小大于第一阈值。5.根据权利要求3或4所述的方法,其特征在于,所述获取扫描请求,包括:周期性获取所述扫描请求,所述扫描请求用于周期性统计所述第一内存介质和所述第二内存介质中的内存页的冷热程度。6.根据权利要求3所述的方法,其特征在于,在获取所述扫描请求之前,所述方法还包括:在单位周期内,统计所述第一内存页中数据被读取的次数;当所述第一内存页中数据被执行一次读取操作时,所述第一内存页的热度加一,所述热度用于指示所述单位周期内所述第一内存页中数据被访问的冷热程度。7.根据权利要求1至6中任一所述的方法,其特征在于,所述迁移数据集包括第一数据集,所述第一数据集包括至少一个热数据,所述热数据为单位周期内数据被读写的次数大于第一阈值的数据。8.根据权利要求1至7中任一所述的方法,其特征在于,所述根据所述数据分布确定数据迁移方式,包括:确定所述混合内存系统中分级内存机制,所述分级内存机制用于指示所述混合内存系统中所述多种不同类型的内存介质的等级,所述混合内存系统包括多个等级,所述多个等级包括第一等级和第二等级;根据所述数据分布和所述混合内存机制确定所述数据迁移方式。9.根据权利要求8所述的方法,其特征在于,所述第一内存介质归属为第一等级,所述第二内存介质归属为第二等级,则根据所述数据分布和所述分级内存机制确定所述数据迁
移方式,包括:从所述第一大页内存池中选择一个或多个空闲的内存页,将包括所述第二内存介质中热页的数据的第一数据集迁移至所述第一大页内存池中所述一个或多个空闲的内存页。10.根据权利要求8所述的方法,其特征在于,所述第一内存介质归属为第一等级,所述第二内存介质归属为第二等级,所述迁移数据集还包括第二数据集,所述第二数据集包括至少一个冷数据,所述冷数据为单位周期内被读写的次数小于或等于第二阈值的数据,则根据所述数据分布和所述分级内存机制确定所述数据迁移方式,包括:从第二大页内存池中选择一个或多个空闲内存页,将包括所述第一内存介质中冷页中数据的所述第二数据集迁移至所述第二大页内存池中所述一个或多个空闲内存页。11.根据权利要求10所述的方法,其特征在于,所述方法还包括:将包括所述第二内存介质中热页的数据的第一数据集迁移至所述第一内存池中一个或多个空闲的内存页。12.根据权利要求1至11中任一所述的方法,其特征在于,所述第一内存介质的时延低于所述第二内存介质的时延,所述第一内存介质的成本高于所述第二内存介质。13.根据权利要求12所述的方法,其特征在于,所述第一存储介质的寿命高于所述第一内存介质,所述第一存储介质的容量低于所述第二内存介质的容量。14.根据权利要求1至13中任一所述的方法,其特征在于,所述第一内存介质为动态随机存取存储器DRAM,所述第二内存介质为存储级内存SCM,所述SCM包括相变存储器PCM,磁性随机存储器MRAM、电阻型随机存储器RRAM,铁电式存储器FRAM,快速NAND或纳米随机存储器NRAM中至少一种。15.根据权利要求1至14中任一所述的方法,其特征在于,所述处理器与所述多种不同类型的内存介质通过支持内存语义的接口相连,所述接口包括支持计算机快速链接CXL、缓存一致互联协议CCIX或统一总线UB中至少一种接口。16.根据权利要求1至15中任一所述的方法,其特征在于,所述混合内存系统为服务器或服务器集群,所述服务器集群包括两个或两个以上服务器。17.根据权利要求1至16中任一所述的方法,其特征在于,所述混合内存系统应用于部署大容量内存的场景,所述场景包括大数据、内存型数据库或云服务中至少一种。18.一种数据处理的装置,其特征在于,所述装置应用于混合内存系统,所述混合内存系统包括多种不同类型的内存介质,所述多种内存介质包括第一内...

【专利技术属性】
技术研发人员:祝晓平陈欢
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:

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

1