CN112214302B - 一种进程调度方法 - Google Patents

一种进程调度方法 Download PDF

Info

Publication number
CN112214302B
CN112214302B CN202011186942.5A CN202011186942A CN112214302B CN 112214302 B CN112214302 B CN 112214302B CN 202011186942 A CN202011186942 A CN 202011186942A CN 112214302 B CN112214302 B CN 112214302B
Authority
CN
China
Prior art keywords
nvm
remote
node
page
memory access
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202011186942.5A
Other languages
English (en)
Other versions
CN112214302A (zh
Inventor
刘磊
杨胜杰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Institute of Computing Technology of CAS
Original Assignee
Institute of Computing Technology of CAS
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Institute of Computing Technology of CAS filed Critical Institute of Computing Technology of CAS
Priority to CN202011186942.5A priority Critical patent/CN112214302B/zh
Publication of CN112214302A publication Critical patent/CN112214302A/zh
Application granted granted Critical
Publication of CN112214302B publication Critical patent/CN112214302B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • G06F9/5016Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

本发明提供了一种进程调度方法,首先,检测NVM上页面的使用情况,并判断NVM是否有远程内存访问情况发生,确定是否进行进程迁移操作以减少远程内存访问。然后,通过判远程非易失性内存访问占总NVM内存访问的比例来选择合适的进程迁移机会。本发明还综合考虑了NVM上页面热度的信息,尽量保证热页面的访问速度。

Description

一种进程调度方法
技术领域
本发明涉及多处理器计算机领域,具体涉及使用非易失性内存的多处理器计算机,更具体涉及一种在使用非易失性内存的多处理器计算机中减少远程非易失性内存访问的进程调度方法。
背景技术
非易失性内存((Non-Volatile Memory,简称NVM)是指当电流关掉后,所存储的数据不会消失的电脑存储器。非易失性内存中,根据存储器内的数据是否能在使用电脑时随时改写,可分为只读存储器ROM和闪存(Flash memory)。非易失性内存不仅比动态随机存储器(Dynamic RAM,简称DRAM)提供更大的容量,还展现出良好的访存延迟、字节寻址能力和数据的持久性。因此,在不久的将来,非易失型内存将在体系结构中被普遍使用。例如,阿里云使用Intel推出的傲腾持久化内存模块(Optane DC PMM)作为后端存储介质。
在NVM出现之前,文件数据通常存放在磁盘上。为了缓解磁盘和DRAM之间的延迟间隔,操作系统实现了页面缓存机制,将一部分常用的数据从磁盘加载到内存中。页面缓存机制有效的提高了整体性能,也给多处理器(CPU)的计算机带来了新的挑战,即如何缩短从处理器到DRAM的访问路径。这是因为,多处理器计算机中每组处理器都有自己的内存,访问本地内存要比访问其他内存(即远程访问内存)的速度快。为了降低远程访问内存的开销,多处理器的计算机通常使用非统一内存访问架构(Non-Uniform Memory AccessArchitecture,简称NUMA架构),该架构保证无论用户进程位于哪个节点上,数据都可以从磁盘加载到最靠近用户进程的DRAM上,使用户进程访问的数据位于本地内存中,提高了内存访问速度。
为了充分利用NVM的非易失性,基于NVM的文件系统通常会提供直接访问接口(Direct Access,简称DAX),通过该接口,用户进程可以使用load/store指令,将存放在NVM上的文件直接映射到其地址空间并访问文件内容。这样做绕过了页面缓存和块I/O软件堆栈,操作系统无需将文件数据复制到DRAM中,从而可以更快地访问NVM。然而,绕过DRAM也带来了额外的远程内存访问风险。由于NVM所处的节点通常是固定的,一旦操作系统将用户进程调度到NVM所在节点之外的其他节点,必然会引发远程内存访问,导致额外的时间开销。
在现有的进程调度技术中,代表性的工作是Ingo Molnar提出的完全公平调度机制(Completely Fair Scheduler,简称CFS),该机制在真实的硬件上建模了一个理想的多任务的CPU,并记录下每一个任务对CPU的使用情况,CFS总是选择消耗CPU资源最少的任务来运行。但是,这个方法仅考虑对单个CPU考虑调度策略,没有考虑到多CPU的计算机。NickPiggin等人引入了Scheduling Domain解决方案,负责在不同CPU上进行负载均衡的线程调度,但是这种方法并没有考虑到CPU访问本地内存和外部内存的速度差异,从而导致了潜在远程访问风险,并且,NVM读写不均衡的特性加深了远程内存访问给系统带来的内存伤害。到目前为止,还没有方法可以减少NVM引起的远程内存访问风险。
发明内容
为解决上述现有技术中存在的问题,提供一种进程调度方法,包括:
步骤1,获取当前进程访问的每个NVM的页面信息,所述页面信息至少包括:每个NVM对应的NUMA节点号、进程所访问的每个NVM的页面总数、每个NVM的热页面数量;
步骤2,根据所述进程访问的NVM的页面信息判断所述进程是否发生远程非易失性内存访问;
步骤3,在判断出所述进程发生远程非易失性内存访问时,根据所述进程访问的NVM的页面信息确定是否迁移所述进程。
优选的,所述步骤1还包括:
步骤11,获取NVM的物理地址范围和对应的NUMA节点号;
步骤12,根据所述进程的虚拟内存区域对应的物理地址是否落在NVM上,获取所述进程访问的NVM所在的NUMA节点号;
步骤13,获取所述进程访问的NVM页面的总数和热页面的数量。
优选的,所述步骤2还包括:
步骤21,检查所述进程的CPU亲和力掩码,判断所述进程所属的CPU集合,获取CPU对应的NUMA节点号;
步骤22,比较CPU对应的NUMA节点号和NVM对应的NUMA节点号,确定是否存在远程非易失性内存访问。
优选的,其中,在步骤22中,如果所述CPU对应的NUMA节点号和所述NVM对应的NUMA节点号相同,则没有远程非易失性内存访问;如果两者不同,则存在远程非易失性内存访问。
优选的,所述步骤3包括:当进程使用的数据完全由另一个节点上的NVM提供,将进程迁移到其使用的NVM所在的节点。
优选的,所述步骤3包括:当进程同时使用了本地节点的NVM和远程节点的NVM,且使用所述远程节点的页面数占访存总页面数的比例大于等于预定的第一阈值,将所述进程迁移到所述远程节点。
优选的,所述步骤3包括:当所述进程使用远程节点NVM上的页面数目小于预定的第一阈值且大于等于预定的第二阈值时,则进行进程迁移。
优选的,所述预定的第一阈值为80%,所述预定的第二阈值为50%。
根据本发明的一个方面,提供一种计算机可读存储介质,其上存储有计算机程序,其中,该程序被处理器执行时实现根据上述任一项所述方法的步骤。
根据本发明的一个方面,提供一种计算机设备,包括存储器和处理器,在所述存储器上存储有能够在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现上述任一项所述的方法的步骤。
本发明具有如下特点和有益效果:本发明协调考虑本地节点和远程节点上NVM的使用情况以及NVM上页面热度的信息,通过进程迁移,减少NVM远程内存访问的风险和额外的时间开销,保证了热页面的访问速度。
附图说明
图1示出了根据本发明一个实施例的减少远程非易失性内存访问的进程调度装置。
图2示出了根据本发明一个实施例的进程迁移策略。
具体实施方式
下面结合附图和具体实施例对本发明加以说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
多处理器的计算机通常使用的NUMA架构提供一种分布式存储器访问方式,处理器可以同时访问不同的存储器地址,大幅度提高并行性。在NUMA架构下,处理器被划分成多个“节点”(node),每个节点被分配有本地存储器空间。所有节点中的处理器都可以访问全部的系统物理存储器,这些物理存储器包括DRAM和NVM,但是访问本节点内的存储器所需要的时间,比访问远程节点内的存储器所花的时间要少得多。当运行在某一个处理器上的进程要访问远程节点的存储器,称为远程内存访问,远程内存访问比本地内存访问的速度要慢。
如何避免远程内存访问,现有技术中的处理方式是将远程节点的数据移动到进程所在的本地节点。但是,在包含NVM的系统中,此种处理方式存在很多问题,包括:(1)在DAX感知的文件系统中,对于同时使用DRAM和NVM的系统,页面迁移非常复杂;(2)由于所迁移的数据块是持久数据,页面迁移的过程要通过事务机制保证原子性和一致性,这又引入了额外的开销;(3)持久数据通常比易失性数据大,因此,频繁地迁移持久性数据会产生显著的开销。
考虑到迁移数据有上述问题,本发明人经过研究,从另一个角度提出了新的技术方案,即提供迁移进程解决上述问题。通过进程调度,将进程从原有节点迁移到持久性数据所在的节点,就可以实现进程访问本地内存数据,避免访问远程内存数据。
为了实现避免远程非易失性内存访问而进行进程调度,其前提是系统首先需要感知到此时是否有进程访问远程非易失性内存,并针对已经发生远程非易失性内存访问情况,进行进程迁移,使进程所在的CPU和其使用的NVM处于同一NUMA节点上,从而避免远程非易失性内存访问的情况。
因此,本发明要解决的主要问题包括:
A、如何获取进程使用NVM页面的具体信息,以及如何确定当前进程是否发生远程非易失性内存访问的情况。这些信息包括当前进程是否访问了NVM页面和具体的页面热度。
B、如何基于NVM页面信息制定进程迁移策略,即如何判断当前进程是否应该进行跨节点迁移,把握迁移的具体时机,从而消除NVM上发生的远程内存访问现象。
根据本发明的一个实施例,提供一种进程调度方法,其包括以下步骤:
步骤1,获取进程使用的NVM页面信息,根据本发明的一个实施例,该步骤包括:
步骤11,获取NVM的物理地址范围和对应NUMA节点号。根据本发明的一个实施例,通过扫描高级配置与电源接口(Advanced Configuration and Power Interface,简称ACPI)来获取静态资源亲和表(Static Resource Affinity Table,简称SRAT),该表上记载了处理器和内存的拓扑信息。通过检查SRAT表上内存条目的ACPI_SRAT_MEM_NON_VOLATILE标志位来确认该内存是否为非易失性内存,进而得到非易失性内存设备的物理地址范围和对应的节点号。
步骤12,确认一个进程的虚拟内存区域(Virtual Memory Area,简称VMA)对应的物理地址是否落在NVM上。根据本发明的一个实施例,在linux内核中,进程的虚拟内存空间分成不会重叠的若干区域,每个区域都有其相关的属性和用途,一个合法的地址总是落在某个区域当中,这样的区域被称之为虚拟内存区域。一个VMA就是一块连续的线性地址空间的抽象,它拥有自身的权限(可读,可写,可执行等),每一个虚拟内存区域都由一个相关的struct vm_area_struct结构来描述。通过遍历当前进程的VMA,将每个VMA起始页面的虚拟地址转为物理地址,并检查该页面物理地址是否落在非易失型内存的物理地址范围内。如果是,则说明该VMA上的页面均在NVM上。
步骤13,检测NVM上页面的热度。遍历处于NVM上的VMA的每个页面,连续三次检查页面对应页表项的访问位(access_bit),每次间隔一定的时间,根据本发明的一个实施例,间隔为1秒。具体操作是,每次检查前先将该访问位设置为0,然后检查该位是否变为1。如果三次检查后,该访问位两次都由0变为1,则将该页面标记为热页面,否则标记为冷页面。
步骤2,判断当前是否发生远程非易失性内存访问。当步骤1结束后,若判断出进程正在访问NVM上的页面,则进一步检测是否发生远程非易失性内存访问。根据本发明的一个实施例,包括如下步骤:
步骤21,首先检查进程的CPU亲和力掩码,判断进程所属的CPU集合。然后,获取CPU对应的NUMA节点。根据本发明的一个实施例,调用cpu_to_node()内核函数来获得CPU对应的NUMA节点。
步骤22,比较CPU对应的NUMA节点和非易失性内存所处的NUMA节点,如果二者节点号相同,则说明此时没有发生远程非易失性内存访问;若二者节点号不同,则说明此时正在发生远程非易失性内存访问。
步骤3,针对远程非易失性内存访问情况制定适当的进程迁移策略。例如,若NVM上暂时没有远程内存访问的情况,则无需进行进程的迁移;若存在远程内存访问情况,则根据所制定的进程迁移策略决定具体迁移的时机。根据本发明的一个实施例,该策略将基于采样的数据制定进程迁移策略,这些数据例如包括NVM上冷热页面的数目,进程使用远程和本地NVM的页面数目,进程所在的CPU节点号和NVM所在的节点号等。进程迁移策略首先判断进程所需要的数据是否完全由远程非易失性内存提供,即此时进程没有访问本地NUMA节点的非易失性内存。若是,则触发迁移,将进程迁移到其使用的非易失性内存所在的NUMA节点。若不是,则进一步判断进程访问远程非易失型内存的数据范围占总数据范围的比例大于等于第一阈值,则意味着此时进程更偏向于访问远程的非易失性内存,进程迁移策略将进行进程迁移。进程访问远程非易失型内存的数据范围占总数据范围的比例大于等于第二阈值,且小于第一阈值,则比较页面热度,若远程非易失性内存上的热页面数量大于本地的热页面数量,则进行进程迁移。根据本发明的一个实施例,第一阈值为80%,第二阈值为50%。
图1示出了根据本发明一个实施例的减少远程非易失性内存访问的进程调度装置。该装置包含检测模块和进程迁移模块两部分,其中,检测模块的工作分为两个阶段,在第一阶段,检测NVM页面信息,在第二阶段检测进程对本地NVM和远程NVM的访问情况,图1中,根据本发明的一个实施例,运行于节点1的进程通过UPI访问节点0的NVM,即为远程非易失性内存访问,其中,UPI是指Intel的Ultra Path Interconnect技术,实现芯片间的直接互联,拥有更高的通信速率、效率、更低的功耗。以上两个阶段输出的信息包括热页面数、冷页面数、CPU节点号、NVM节点号、远程NVM页面总数、本地NVM页面总数。图1中的进程迁移模块,根据检测输出的NVM页面信息依据进程迁移策略迁移进程。
图2示出了根据本发明一个实施例的进程迁移策略,分为三部分,分别是“完全消除远程NVM访问”、“根据页面范围迁移进程”、“根据页面热度迁移进程”。其中,在“完全消除远程访问”策略中,示出了节点1的进程所访问的NVM完全是节点0的NVM,故此将该进程从节点1迁移到节点0。在“根据页面范围迁移进程”的策略中,节点1的进程所访问的NVM,有80%是节点0的NVM,即远程访问,20%是节点1的NVM,即本地访问,在此种情况下,也将该进程从节点1迁移到节点0。在“根据页面热度迁移进程”的策略中,节点1的进程访问节点0的NVM的页面数虽然未达到80%,但是访问节点0的NVM的热页面数量超出了访问节点1的NVM的热页面数,因此,将该进程从节点1迁移到节点0。
根据以上描述,本发明提出了一种针对NVM的,减少潜在远程内存访问的进程调度方法,该技术通过协调考虑本地节点和远程节点上NVM的使用情况来增强现有的进程调度方法。首先,检测NVM上页面的使用情况并判断NVM是否有远程内存访问情况发生,从而判断是否进行进程迁移操作以减少远程内存访问。然后,通过判断远程非易失性内存访问占总NVM内存访问的比例来选择合适的进程迁移机会。并且,本发明还综合考虑了NVM上页面热度的信息,尽量保证了热页面的访问速度。
应该注意到并理解,在不脱离后附的权利要求所要求的本发明的精神和范围的情况下,能够对上述详细描述的本发明做出各种修改和改进。因此,要求保护的技术方案的范围不受所给出的任何特定示范教导的限制。

Claims (7)

1.一种进程调度方法,包括:
步骤1,获取当前进程访问的每个NVM的页面信息,所述页面信息至少包括:每个NVM对应的NUMA节点号、进程所访问的每个NVM的页面总数、每个NVM的热页面数量;
步骤2,根据所述进程访问的NVM的页面信息判断所述进程是否发生远程非易失性内存访问;
步骤3,在判断出所述进程发生远程非易失性内存访问时,根据所述进程访问的NVM的页面信息确定是否迁移所述进程;
其中,步骤3进一步包括:
当进程使用的数据完全由另一个节点上的NVM提供,将进程迁移到其使用的NVM所在的节点;
当进程同时使用了本地节点的NVM和远程节点的NVM,且使用所述远程节点的页面数占访存总页面数的比例大于等于预定的第一阈值,将所述进程迁移到所述远程节点;
当所述进程使用远程节点NVM上的页面数目小于预定的第一阈值且大于等于预定的第二阈值时,则进行进程迁移。
2.根据权利要求1所述的进程调度方法,所述步骤1还包括:
步骤11,获取NVM的物理地址范围和对应的NUMA节点号;
步骤12,根据所述进程的虚拟内存区域对应的物理地址是否落在NVM上,获取所述进程访问的NVM所在的NUMA节点号;
步骤13,获取所述进程访问的NVM页面的总数和热页面的数量。
3.根据权利要求1所述的进程调度方法,所述步骤2还包括:
步骤21,检查所述进程的CPU亲和力掩码,判断所述进程所属的CPU集合,获取CPU对应的NUMA节点号;
步骤22,比较CPU对应的NUMA节点号和NVM对应的NUMA节点号,确定是否存在远程非易失性内存访问。
4.根据权利要求3所述的进程调度方法,其中,在步骤22中,如果所述CPU对应的NUMA节点号和所述NVM对应的NUMA节点号相同,则没有远程非易失性内存访问;如果两者不同,则存在远程非易失性内存访问。
5.根据权利要求1所述的进程调度方法,所述预定的第一阈值为80%,所述预定的第二阈值为50%。
6.一种计算机可读存储介质,其上存储有计算机程序,其中,该程序被处理器执行时实现根据权利要求1至5中任一项所述方法的步骤。
7.一种计算机设备,包括存储器和处理器,在所述存储器上存储有能够在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求1至5任一项所述的方法的步骤。
CN202011186942.5A 2020-10-30 2020-10-30 一种进程调度方法 Active CN112214302B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011186942.5A CN112214302B (zh) 2020-10-30 2020-10-30 一种进程调度方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011186942.5A CN112214302B (zh) 2020-10-30 2020-10-30 一种进程调度方法

Publications (2)

Publication Number Publication Date
CN112214302A CN112214302A (zh) 2021-01-12
CN112214302B true CN112214302B (zh) 2023-07-21

Family

ID=74057610

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011186942.5A Active CN112214302B (zh) 2020-10-30 2020-10-30 一种进程调度方法

Country Status (1)

Country Link
CN (1) CN112214302B (zh)

Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102467404A (zh) * 2011-10-14 2012-05-23 海尔集团技术研发中心 一种基于物理内存实现软件快速切换的方法及装置
CN104216837A (zh) * 2013-05-31 2014-12-17 华为技术有限公司 一种内存系统、内存访问请求的处理方法和计算机系统
CN104317627A (zh) * 2014-11-13 2015-01-28 北京奇虎科技有限公司 存储空间的清理数据一键扫描方法和装置
WO2015169145A1 (zh) * 2014-05-06 2015-11-12 华为技术有限公司 内存管理方法和设备
CN105468538A (zh) * 2014-09-12 2016-04-06 华为技术有限公司 一种内存迁移方法及设备
CN108897618A (zh) * 2018-06-19 2018-11-27 中国科学技术大学 一种异构内存架构下基于任务感知的资源分配方法
CN108932154A (zh) * 2018-07-23 2018-12-04 上海交通大学 一种分布式虚拟机管理器
CN109496296A (zh) * 2016-07-26 2019-03-19 微软技术许可有限责任公司 使远程存储访问在虚拟化环境中显示为本地的硬件
CN110134492A (zh) * 2019-04-18 2019-08-16 华中科技大学 一种异构内存虚拟机不停机的内存页面迁移系统
CN110457261A (zh) * 2019-08-06 2019-11-15 深圳市腾讯计算机系统有限公司 数据访问方法、装置及服务器
CN110647764A (zh) * 2019-09-05 2020-01-03 上海交通大学 针对用户态非易失性内存文件系统的保护方法及系统
CN110750356A (zh) * 2019-09-09 2020-02-04 华南师范大学 适用于非易失性内存的多核交互方法、系统及存储介质
CN110795363A (zh) * 2019-08-26 2020-02-14 北京大学深圳研究生院 一种存储介质的热页预测方法和页面调度方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9311230B2 (en) * 2013-04-23 2016-04-12 Globalfoundries Inc. Local direct storage class memory access
DE102019102861A1 (de) * 2019-02-05 2020-08-06 Hyperstone Gmbh Verfahren und Vorrichtung zur Abschätzung der Abnutzung eines nicht-flüchtigen Informationsspeichers

Patent Citations (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102467404A (zh) * 2011-10-14 2012-05-23 海尔集团技术研发中心 一种基于物理内存实现软件快速切换的方法及装置
CN104216837A (zh) * 2013-05-31 2014-12-17 华为技术有限公司 一种内存系统、内存访问请求的处理方法和计算机系统
WO2015169145A1 (zh) * 2014-05-06 2015-11-12 华为技术有限公司 内存管理方法和设备
CN105095094A (zh) * 2014-05-06 2015-11-25 华为技术有限公司 内存管理方法和设备
CN105468538A (zh) * 2014-09-12 2016-04-06 华为技术有限公司 一种内存迁移方法及设备
CN104317627A (zh) * 2014-11-13 2015-01-28 北京奇虎科技有限公司 存储空间的清理数据一键扫描方法和装置
CN109496296A (zh) * 2016-07-26 2019-03-19 微软技术许可有限责任公司 使远程存储访问在虚拟化环境中显示为本地的硬件
CN108897618A (zh) * 2018-06-19 2018-11-27 中国科学技术大学 一种异构内存架构下基于任务感知的资源分配方法
CN108932154A (zh) * 2018-07-23 2018-12-04 上海交通大学 一种分布式虚拟机管理器
CN110134492A (zh) * 2019-04-18 2019-08-16 华中科技大学 一种异构内存虚拟机不停机的内存页面迁移系统
US10810037B1 (en) * 2019-04-18 2020-10-20 Huazhong University Of Science And Technology Live page migration for hybrid memory virtual machines
CN110457261A (zh) * 2019-08-06 2019-11-15 深圳市腾讯计算机系统有限公司 数据访问方法、装置及服务器
CN110795363A (zh) * 2019-08-26 2020-02-14 北京大学深圳研究生院 一种存储介质的热页预测方法和页面调度方法
CN110647764A (zh) * 2019-09-05 2020-01-03 上海交通大学 针对用户态非易失性内存文件系统的保护方法及系统
CN110750356A (zh) * 2019-09-09 2020-02-04 华南师范大学 适用于非易失性内存的多核交互方法、系统及存储介质

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
一种支持大页的层次化DRAM/NVM混合内存系统;陈吉;刘海坤;王孝远;张宇;廖小飞;金海;;计算机研究与发展(第09期);第226-241页 *
一种避免页迁移的混合内存页管理策略;刘翠梅;杨璇;贾刚勇;韩光洁;;小型微型计算机系统(第06期);第184-189页 *
混合内存页面管理策略的性能和能耗研究;陈俊熹;沙行勉;诸葛晴凤;陈咸彰;;现代计算机(专业版)(第11期);第12-19页 *

Also Published As

Publication number Publication date
CN112214302A (zh) 2021-01-12

Similar Documents

Publication Publication Date Title
EP3121731B1 (en) Memory management method and device
US8812792B2 (en) Technique for using memory attributes
US7818489B2 (en) Integrating data from symmetric and asymmetric memory
US8996811B2 (en) Scheduler, multi-core processor system, and scheduling method
US8478931B1 (en) Using non-volatile memory resources to enable a virtual buffer pool for a database application
CN110959154B (zh) 用于线程本地存储数据访问的私有高速缓存
US8140825B2 (en) Systems and methods for selectively closing pages in a memory
US9727465B2 (en) Self-disabling working set cache
US11494308B2 (en) Methods and devices for bypassing the internal cache of an advanced DRAM memory controller
US11307784B2 (en) Method and apparatus for storing memory attributes
CN115904212A (zh) 数据处理的方法、装置、处理器和混合内存系统
KR20240004361A (ko) 프로세싱-인-메모리 동시적 프로세싱 시스템 및 방법
US7783849B2 (en) Using trusted user space pages as kernel data pages
CN112214302B (zh) 一种进程调度方法
CN116342365A (zh) 用于经由使用可用设备存储器扩展系统存储器的技术
CN112748854B (zh) 对快速存储设备的优化访问
Yang et al. Monitoring Memory Behaviors and Mitigating NUMA Drawbacks on Tiered NVM Systems
Joyce et al. Improving efficiency of persistent storage access in embedded Linux
Shigemitsu et al. A High Performance File System for Non-Volatile Main Memory
CN114816781A (zh) 核间通信的方法、处理器和电子设备
CN117271107A (zh) 数据处理方法、装置、电子设备以及计算机可读存储介质
CN117632778A (zh) 电子装置和操作电子装置的方法
CN103197957A (zh) 一种用户程序执行时页面复制方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant