CN115599304A - 应用于存储节点的数据处理方法、装置、设备及存储介质 - Google Patents

应用于存储节点的数据处理方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN115599304A
CN115599304A CN202211322047.0A CN202211322047A CN115599304A CN 115599304 A CN115599304 A CN 115599304A CN 202211322047 A CN202211322047 A CN 202211322047A CN 115599304 A CN115599304 A CN 115599304A
Authority
CN
China
Prior art keywords
data
storage unit
storage
node
target
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.)
Pending
Application number
CN202211322047.0A
Other languages
English (en)
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.)
CCB Finetech Co Ltd
Original Assignee
CCB Finetech Co Ltd
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 CCB Finetech Co Ltd filed Critical CCB Finetech Co Ltd
Priority to CN202211322047.0A priority Critical patent/CN115599304A/zh
Publication of CN115599304A publication Critical patent/CN115599304A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/0644Management of space entities, e.g. partitions, extents, pools
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0647Migration mechanisms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本公开提供了一种应用于存储节点的数据处理方法、装置、设备及存储介质,可以应用于大数据技术领域。存储节点包括本地节点和远端节点,本地节点和远端节点各自包括第一存储单元和读写速度慢于第一存储单元的第二存储单元,本地节点与处理器相关联,该方法包括:根据处理器的当前进程,确定被处理器访问的目标数据;以及在确定目标数据存储于第一预定位置的情况下,将目标数据从第一预定位置迁移至本地节点的第一存储单元;其中,第一预定位置包括以下中的至少一个:本地节点的第二存储单元、远端节点的第一存储单元和远端节点的第二存储单元。

Description

应用于存储节点的数据处理方法、装置、设备及存储介质
技术领域
本公开涉及大数据领域,尤其涉及一种应用于存储节点的数据处理方法、装置、设备、介质和程序产品。
背景技术
非统一内存访问架构(non-uniform memory access architecture,NUMA)是一种多处理器的计算机架构。对于具有NUMA结构的计算设备,每个处理器(CPU)可以配备有多层异构内存。
目前,在基于NUMA的计算设备中,无法充分发挥多层异构内存中各个内存的优势,进而导致较低的访问性能。
发明内容
鉴于上述问题,本公开提供了应用于存储节点的数据处理方法、装置、设备、介质和程序产品。
根据本公开的第一个方面,提供了一种应用于存储节点的数据处理方法,所述存储节点包括本地节点和远端节点,所述本地节点和所述远端节点各自包括第一存储单元和读写速度慢于第一存储单元的第二存储单元,所述本地节点与处理器相关联;所述方法包括:根据所述处理器的当前进程,确定被所述处理器访问的目标数据;以及在确定所述目标数据存储于第一预定位置的情况下,将所述目标数据从所述第一预定位置迁移至所述本地节点的第一存储单元;其中,所述第一预定位置包括以下中的至少一个:所述本地节点的第二存储单元、所述远端节点的第一存储单元和所述远端节点的第二存储单元。
根据本公开另一实施例,所述将所述目标数据从所述第一预定位置迁移至所述本地节点的第一存储单元包括:响应于检测到所述本地节点的第一存储单元的剩余存储空间小于所述目标数据的占用空间,根据所述本地节点的第一存储单元中的数据的访问频率,确定所述本地节点的第一存储单元中的冷数据;将所述冷数据从所述本地节点的第一存储单元迁移至第二预定位置;以及将所述目标数据从所述第一预定位置迁移至所述本地节点的第一存储单元。
根据本公开另一实施例,所述第二预定位置包括N个存储区,N是大于等于2的整数;所述将所述冷数据从所述本地节点的第一存储单元迁移至第二预定位置包括:根据所述N个存储区的优先级、所述冷数据的占用空间和N个存储区各自的剩余存储空间,从所述N个存储区中确定目标存储区;以及将所述冷数据从所述本地节点的第一存储单元迁移至所述目标存储区。
根据本公开另一实施例,所述根据所述N个存储区的优先级、所述冷数据的占用空间和N个存储区各自的剩余存储空间,从所述N个存储区中确定目标存储区包括:在确定所述N个存储区中至少一个存储区的剩余存储空间大于等于所述冷数据的占用空间的情况下,重复执行以下操作,直至得到目标存储区:将所述N个存储区中优先级最高的存储区,确定为当前存储区;确定所述当前存储区的剩余存储空间是否大于等于所述冷数据的占用空间;若是,则将所述当前存储区确定为所述目标存储区;以及若否,则从所述N个存储区中删除所述当前存储区。
根据本公开另一实施例,所述根据所述N个存储区的优先级、所述冷数据的占用空间和N个存储区各自的剩余存储空间,从所述N个存储区中确定目标存储区包括:在确定所述N个存储区中每个存储区的剩余存储空间小于所述冷数据的占用空间的情况下,根据N个存储区的优先级、所述冷数据的占用空间和所述N个存储区各自的剩余空间,对所述冷数据进行分块处理,得到至少两个数据块;以及从所述N个存储区中确定与至少两个数据块一一对应的至少两个目标存储区。
根据本公开另一实施例,所述将所述目标数据从所述第一预定位置迁移至所述本地节点的第一存储单元包括:响应于检测到所述本地节点的第一存储单元的剩余存储空间大于等于所述目标数据的占用空间,将所述目标数据从所述第一预定位置迁移至所述本地节点的第一存储单元。
根据本公开另一实施例,所述目标数据的数量是多个,多个目标数据包括已迁移数据和未迁移数据;将所述目标数据从所述第一预定位置迁移至所述本地节点的第一存储单元包括:响应于检测到所述已迁移数据的数据量与所述多个目标数据的数据量之间的比值大于等于比值阈值,将所述未迁移数据从所述第一预定位置迁移至所述本地节点的第一存储单元。
根据本公开另一实施例,将所述未迁移数据从所述第一预定位置迁移至所述本地节点的第一存储单元包括:根据所述多个目标数据的访问顺序,从所述未迁移数据中确定当前候选数据;将所述当前候选数据迁移至所述本地节点的第一存储单元;从所述未迁移数据中删除所述当前候选数据;以及响应于检测到所述当前候选数据被访问,返回确定当前候选数据的操作,直至所述未迁移数据的数量是0。
本公开的第二方面提供了一种应用于存储节点的数据处理装置,所述存储节点包括本地节点和远端节点,所述本地节点和所述远端节点各自包括第一存储单元和读写速度慢于第一存储单元的第二存储单元,所述本地节点与处理器相关联;所述装置包括:确定模块和迁移模块。确定模块用于根据所述处理器的当前进程,确定被所述处理器访问的目标数据。迁移模块用于在确定所述目标数据存储于第一预定位置的情况下,将所述目标数据从所述第一预定位置迁移至所述本地节点的第一存储单元。所述第一预定位置包括以下中的至少一个:所述本地节点的第二存储单元、所述远端节点的第一存储单元和所述远端节点的第二存储单元。
本公开的第三方面提供了一种电子设备,包括:一个或多个处理器;存储器,用于存储一个或多个程序,其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得一个或多个处理器执行上述方法。
本公开的第四方面还提供了一种计算机可读存储介质,其上存储有可执行指令,该指令被处理器执行时使处理器执行上述方法。
本公开的第五方面还提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述方法。
根据本公开提供的数据处理方法、装置、设备、介质和程序产品,根据本公开实施例提供的技术方案,由于当进程运行在第一处理器,而访问的目标数据在第一预定位置时,可以将目标数据从第一预定位置迁移至第一本地存储单元,因此可以提升系统访问性能。
附图说明
通过以下参照附图对本公开实施例的描述,本公开的上述内容以及其他目的、特征和优点将更为清楚,在附图中:
图1示意性示出了根据本公开实施例的存储节点的结构图;
图2示意性示出了根据本公开实施例的数据处理方法的流程图;
图3示意性示出了根据本公开另一实施例的数据处理方法的流程图;
图4示意性示出了根据本公开实施例的数据处理装置的结构框图;以及
图5示意性示出了根据本公开实施例的适于实现数据处理方法的电子设备的方框图。
具体实施方式
以下,将参照附图来描述本公开的实施例。但是应该理解,这些描述只是示例性的,而并非要限制本公开的范围。在下面的详细描述中,为便于解释,阐述了许多具体的细节以提供对本公开实施例的全面理解。然而,明显地,一个或多个实施例在没有这些具体细节的情况下也可以被实施。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本公开的概念。
在此使用的术语仅仅是为了描述具体实施例,而并非意在限制本公开。在此使用的术语“包括”、“包含”等表明了所述特征、步骤、操作和/或部件的存在,但是并不排除存在或添加一个或多个其他特征、步骤、操作或部件。
在此使用的所有术语(包括技术和科学术语)具有本领域技术人员通常所理解的含义,除非另外定义。应注意,这里使用的术语应解释为具有与本说明书的上下文相一致的含义,而不应以理想化或过于刻板的方式来解释。
在使用类似于“A、B和C等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,“具有A、B和C中至少一个的系统”应包括但不限于单独具有A、单独具有B、单独具有C、具有A和B、具有A和C、具有B和C、和/或具有A、B、C的系统等)。
在本公开的技术方案中,所涉及的数据(如包括但不限于用户个人信息)的收集、存储、使用、加工、传输、提供、公开和应用等处理,均符合相关法律法规的规定,采取了必要保密措施,且不违背公序良俗。
计算机系统采用NUMA结构,NUMA结构包括多个NUMA node,每个NUMA node包括自己的内存,每个NUMA node上的进程访问自己的内存被称为访问本地内存,跨NUMA node访问内存被称为访问远端内存。
NUMA结构可以采用采用多层异构结构的内存,例如NUMA node可以包括第一存储单元和第二存储单元,第一存储单元的性能优于第二存储单元,第二存储单元用于提升单节点的内存容量。
在基于NUMA的多层异构结构中,CPU可以直接访问第一存储单元和第二存储单元,数据也可以在第一存储单元和第二存储单元之间自由迁移。
在相关技术中,内存管理方法是基于第一存储单元设计的,只考虑了程序的局部性,未考虑第二存储单元的性能特点。在实际应用中,第一存储单元中访问频率较低的数据不会被主动迁移到性能较差的第二存储单元中,此外,第二存储单元中访问频率较高的数据也不会被主动迁移到性能较好的第一存储单元中。
由于上述技术方案不对数据进行迁移,导致在多层异构内存结构的计算机系统中,内存管理方法无法充分利用第一存储单元的高性能和第二存储单元的大容量等优点,进而导致较低的访问性能。
本公开实施例旨在提供数据处理方法,针对多层异构内存结构,该方法能够根据数据的存储位置、第一存储单元的空间使用情况、数据的访问频率等因素,迁移数据到合适的位置,从而减小系统开销,提升系统访问性能。
图1示意性示出了根据本公开实施例的存储节点的结构图。
本公开实施例提供的数据处理方法可以应用于存储节点,存储节点可以包括至少两个节点,节点例如可以是上文所述的NUMA node。每个节点包括第一存储单元和第二存储单元,第一存储单元和第二存储单元均可以是内存,在同一个节点中的第一存储单元的性能优于第二存储单元的性能,例如第一存储单元的读写速度比第二存储单元的读写速度快,第一存储单元例如可以是DRAM,第二存储单元例如可以是持久性内存。至少两个节点各自与对应的CPU相关联。
如图1所示,为了方便对上述至少两个节点进行区分,将其中一个节点称为本地节点110,其他节点称为远端节点120,远端节点120的数量是至少一个。与本地节点110相关联的处理器称为第一处理器130,与远端节点120相关联的处理器称为第二处理器140,本地节点110中的第一存储单元称为第一本地存储单元111,本地节点110中的第二存储单元称为第二本地存储单元112,每个远端节点120中的第一存储单元称为第一远端存储单元121,远端节点120中的第二存储单元称为第二远端存储单元122。
CPU可以访问与自身相关联的节点中存储的数据,例如,第一处理器130可以访问第一本地存储单元111和第二本地存储单元112,第二处理器140可以访问第一远端存储单元121和第二远端存储单元122。此外,两个CPU之间可以通过总线连接,相连接的两个CPU还可以访问与对方相关联的节点中存储的数据,例如,第一处理器130还可以访问第一远端存储单元121和第二远端存储单元122。第二处理器140还可以访问第一本地存储单元111和第二本地存储单元112。
以下将基于图1描述的存储节结构,通过图2~图3对公开实施例的数据处理方法进行详细描述。
图2示意性示出了根据本公开实施例的数据处理方法的流程图。
如图2所示,该实施例的数据处理方法200可以包括操作S210~操作S240。
在操作S210,根据处理器的当前进程,确定被处理器访问的目标数据。
例如,本操作中的处理器可以指上文所述的第一处理器。第一处理器可以运行至少一个进程,第一处理器需要访问数据来实现进程的运行过程。目标数据表示第一处理器运行当前进程所需要访问的数据。目标数据的数量为至少一个。
在操作S220,确定目标数据是否存储于第一预定位置,若否,则可执行操作S230;若是,则可以执行操作S240。
例如,第一预定位置可以表示储第一本地存储单元之外的其他位置,例如第一预定位置可以包括第二本地存储单元、第一远端存储单元和第二远端存储单元中的至少一个。
可以理解的是,当目标数据的数量是多个时,不同目标数据可以存储于不同的第一预定位置。例如,一个目标数据存储于第二本地存储单元,另一个目标数据存储于第一远端存储单元。
在操作S230,无需迁移目标数据。
例如,在确定目标数据存储于第一本地存储单元的情况下,无需对目标数据进行迁移,第一处理器直接从第一本地存储单元中访问目标数据即可。
在操作S240,将目标数据从第一预定位置迁移至本地节点的第一存储单元。
在一些实施例中,可以根据访问频率将目标数据划分为高频目标数据和低频目标数据,例如,可以仅针对高频的目标数据执行迁移操作,对低频的目标数据不执行迁移操作。
在另一些实施例中,可以不将目标数据划分为高频目标数据和低频目标数据,并在任一目标数据被访问的情况下,对被访问的目标数据执行迁移操作。
根据本公开实施例提供的技术方案,由于当进程运行在第一处理器,而访问的目标数据在第一预定位置时,可以将目标数据从第一预定位置迁移至第一本地存储单元,因此能够提升系统访问性能。
图3示意性示出了根据本公开另一实施例的数据处理方法的流程图。
如图3所示,该实施例的数据处理方法300可以包括操作S310~操作S330,还可以包括操作S341~操作S345。
在操作S310,根据第一处理器的当前进程,确定被第一处理器访问的目标数据。
在操作S320,确定目标数据是否存储于第一预定位置,若否,则可以执行操作S330;若是,则可执行操作S341。
在操作S330,例如,无需迁移目标数据,第一处理器直接从第一本地存储单元中访问目标数据即可。
例如,上述操作S310~操作S330可以参考上述操作S210~操作S230,本实施例在此不做赘述。
在操作S341,确定第一本地存储单元的剩余存储空间是否大于等于目标数据的占用空间。若是,则可以执行操作S342,若否,则可以执行操作S343。
在操作S342,将目标数据从第一预定位置迁移至本地节点的第一存储单元。
例如,若访问的数据在第一远端存储单元,则迁移第一远端存储单元的目标数据到第一本地存储单元。以图1为例,如果进程运行在CPU1,当CPU1的第一存储单元空间充足时,而访问的目标数据在CPU2的第一存储单元,则迁移CPU2的第一存储单元中的目标数据到CPU1的第一存储单元。
又例如,若访问的数据在第二远端存储单元,则迁移第二远端存储单元中的目标数据到第一本地存储单元。以图1为例,如果进程运行在CPU1,当CPU1的第一存储单元空间充足时,而访问的目标数据在CPU2的第二存储单元,则迁移CPU2的第二存储单元中的目标数据到CPU1的第一存储单元。
又例如,若访问的数据在第二本地存储单元,则迁移第二本地存储单元中的目标数据到第一本地存储单元。以图1为例,如果进程运行在CPU1,当CPU1的第一存储单元空间充足时,而访问的目标数据在CPU1的第二存储单元中,则迁移CPU1的第二存储单元中的目标数据到CPU1的第一存储单元。
在操作S343,根据本地节点的第一存储单元中的数据的访问频率,确定本地节点的第一存储单元中的冷数据。
例如,可以将在过去预定时段内访问次数少于数量阈值的数据,确定为冷数据。
在操作S344,将冷数据从本地节点的第一存储单元迁移至第二预定位置。
例如,第二预定位置可以包括目标远端节点的第一存储单元、目标远端节点的第二存储单元、本地第二存储单元中的至少一个。需要说明的是,上述目标远端节点与当前存储有目标数据的远端节点可以是同一个远端节点,也可以是不同的远端节点。因此,第一预定位置和第二预定位置可以相同,也可以不同。
在操作S345,将目标数据从第一预定位置迁移至本地节点的第一存储单元。
上述操作S344和操作S345的具体示例如下:
在一种示例中,若访问的目标数据在第一远端存储单元。例如,可以先迁移第一本地存储单元中访问频率低的冷数据到目标远端节点的第一存储单元,然后再迁移第一远端存储单元的目标数据到第一本地存储单元。又例如,可以先迁移第一本地存储单元中访问频率低的冷数据到目标远端节点的第二存储单元,然后再迁移第一远端存储单元的目标数据到第一本地存储单元。又例如,可以先迁移第一本地存储单元中访问频率低的冷数据到第二本地存储单元,然后再迁移第一远端存储单元的目标数据到第一本地存储单元。
在另一种示例中,若访问的目标数据在第二远端存储单元。例如,可以先迁移第一本地存储单元中访问频率低的冷数据到目标远端节点的第一存储单元,然后再迁移第二远端存储单元的目标数据到第一本地存储单元。又例如,可以先迁移第一本地存储单元中访问频率低的冷数据到目标远端节点的第二存储单元,然后再迁移第二远端存储单元的目标数据到第一本地存储单元。又例如,可以先迁移第一本地存储单元中访问频率低的冷数据到第二本地存储单元,然后再迁移第二远端存储单元的目标数据到第一本地存储单元。
在另一种示例中,若访问的目标数据在第二本地存储单元。例如,可以先迁移第一本地存储单元中访问频率低的冷数据到目标远端节点的第一存储单元,然后再迁移第二本地存储单元的目标数据到第一本地存储单元。又例如,可以先迁移第一本地存储单元中访问频率低的冷数据到目标远端节点的第二存储单元,然后再迁移第二本地存储单元的目标数据到第一本地存储单元。又例如,可以先迁移第一本地存储单元中访问频率低的冷数据到第二本地存储单元,然后再迁移第二本地存储单元的目标数据到第一本地存储单元。
根据本公开另一实施例,第二预定位置包括N个存储区,N是大于等于2的整数,存储区可以表示目标远端节点的第一存储单元、目标远端节点的第二存储单元、本地第二存储单元中的任意一个。上述将冷数据从本地节点的第一存储单元迁移至第二预定位置的方法可以以下操作:根据N个存储区的优先级、冷数据的占用空间和N个存储区各自的剩余存储空间,从N个存储区中确定目标存储区。然后将冷数据从本地节点的第一存储单元迁移至目标存储区。
根据本公开实施例提供的技术方案,由于基于优先级来选择目标存储区,然后将冷数据迁移至目标存储区,因此可以确保迁移效率和数据的访问性能。
示例性的,可以先确定N个存储区中至少一个存储区的剩余存储空间是否大于等于冷数据的占用空间,并根据确定结果采用不同的方式来确定目标存储区。
在一种示例中,在确定N个存储区中至少一个存储区的剩余存储空间大于等于冷数据的占用空间的情况下,表示某个存储区可以存储全部冷数据,则优先将全部冷数据存储在一个存储区中,而不对冷数据进行分块处理,从而避免由于数据分块而降低迁移冷数据的效率。
在此情况下,可以通过以下方式来确定目标存储取。例如,重复执行以下操作,直至得到目标存储区:将N个存储区中优先级最高的存储区,确定为当前存储区。确定当前存储区的剩余存储空间是否大于等于冷数据的占用空间。若是,则将当前存储区确定为目标存储区;若否,则从N个存储区中删除当前存储区。
可以按照性能对本地节点和目标远端节点中包括的存储单元进行排序,性能可以表征第一处理器访问目标数据的速度。目标远端的第一存储单元和第二本地存储单元的性能需要根据实际情况来确定。因此,上述优先级可以是目标远端的第一存储单元、第二本地存储单元和目标远端的第二存储单元的优先级依次降低,上述优先级也可以是第二本地存储单元、目标远端的第一存储单元和目标远端的第二存储单元的优先级依次降低。
采用本示例提供的技术方案,基于优先级对本地节点和目标远端节点中包括的存储单元进行排序,并优先将冷数据全部迁移至优先级高的存储区,在当前存储器无法存储全部冷数据的情况下,确定是否向下一级存储区迁移全部冷数据。通过该方案来提高迁移效率,以及确保后续对冷数据的访问性能。
在另一种示例中,在确定N个存储区中每个存储区的剩余存储空间小于冷数据的占用空间的情况下,表示任一存储区无法存储全部冷数据,则可以对冷数据进行分块,以确保完成冷数据的迁移处理。
在此情况下,可以通过以下方式来确定目标存储取。例如,根据N个存储区的优先级、冷数据的占用空间和N个存储区各自的剩余空间,对冷数据进行分块处理,得到至少两个数据块。然后从N个存储区中确定与至少两个数据块一一对应的至少两个目标存储区。
例如,根据优先级最高的存储区的剩余空间,从冷数据中确定可存储于该剩余空间的一个数据块。然后再根据下一优先级的存储区的剩余空间,从冷数据中确定可存储于该剩余空间的一个数据块。若冷数据仍然存在剩余,则根据再下一优先级的存储区的剩余空间,再次确定一个数据块。重复执行上述操作,直至冷数据的数量是0。
例如,经过分块处理后,一个数据块迁移至第二本地存储单元,另一个数据块迁移至目标远端节点的第一存储单元,另一个数据块迁移至目标远端节点的第二存储单元。
采用本示例提供的技术方案,基于优先级对本地节点和目标远端节点中包括的存储单元进行排序,并优先将冷数据中的数据块迁移至优先级高的存储区。该优先级越高,则迁移速度越快,因此通过该方案可以确保迁移全部冷数据的耗时短,以及确保后续对冷数据的访问性能。
根据本公开另一实施例,目标数据的数量是多个,多个目标数据包括已迁移数据和未迁移数据,可以理解的是,已迁移数据是多个目标数据中已从第一预定位置迁移至第一本地存储单元的目标数据,未迁移数据是多个目标数据中未从第一预定位置迁移至第一本地存储单元的目标数据。
相应地,上述将目标数据从第一预定位置迁移至本地节点的第一存储单元的方法可以包括以下操作:响应于检测到已迁移数据的数据量与多个目标数据的数据量之间的比值大于等于比值阈值,将未迁移数据从第一预定位置迁移至本地节点的第一存储单元。
例如进程或线程运行在本地节点的处理器上,访问的目标数据在远端节点的存储单元中。若需要访问的目标数据是100M,当前已经将10M的目标数据从远端节点的存储单元迁移至第一本地存储单元,即已迁移数据是10M,则可以预先将剩余的90M未迁移数据迁移至第一本地存储单元。
可以理解的是,进程需按照时间片来执行,在执行某个进程的时间片之后,需要执行其他进程。在执行其他进程的过程中,本公开实施例可以在执行其他进程的过程中,将剩余的未迁移数据预先迁移至第一本地存储单元,在其他线程的时间片结束并再次执行该进程时,该进程可以直接从第一本地存储单元中访问目标数据,而无需再等待迁移目标数据,从而提高处理效率。
在一些实施例中,在实际执行预迁移剩余的未迁移数据的过程中,可以一次性将全部未迁移数据迁移至第一本地存储单元。
在另一些实施例中,在实际执行预迁移剩余的未迁移数据的过程中,也可以分多次将全部未迁移数据迁移至第一本地存储单元。例如,可以根据多个目标数据的访问顺序,从未迁移数据中确定当前候选数据;将当前候选数据迁移至本地节点的第一存储单元;从未迁移数据中删除当前候选数据;响应于检测到当前候选数据被访问,返回确定当前候选数据的操作,直至未迁移数据的数量是0。
例如,需要访问的目标数据是100M,可以将该100M数据划分为多个候选数据,例如每10M为一个候选数据。在访问了第一个10M的候选数据之后,可以将第二个10M的候选数据迁移至第一本地存储单元,再访问到第二个10M的候选数据之后,将第三个10M的候选数据迁移至第一本地存储单元,从而形成滑动窗口。
本公开实施例采用分批次迁移目标数据的方式,可以在运行多个线程的情况下,为多个线程及时迁移各自所需的目标数据,从而提高处理效率。
在实际应用中,可以预先绑定进程或者线程到固定的NUMA node核上,使得绑定之后的线程、进程无法在其他NUMA node上运行,从而在进程和/或线程未执行时,执行上述预迁移目标数据的操作。
根据本公开另一实施例,还可以根据负载开销自动调度进程。例如,若进程运行在第一NUMAnode,访问的数据在第二NUMAnode。若数据的迁移开销过大,可以将进程或者线程调度到第二NUMA node上执行。
根据本公开另一实施例,考虑到迁移数据会产生性能开销。例如,第一本地存储单元的空间不足需要把冷数据迁出去,该过程会产生一个开销,然后再把目标数据迁至第一本地存储单元,还会再产生一个开销。因此,可以在第一本地存储单元中预留预定空间。
例如,为了避免需要将访问频繁的数据从第一预定位置调度到第一本地存储单元时,第一本地存储单元剩余空间不足导致的性能开销,可以在内存管理时对第一本地存储单元空间进行预留,使得目标数据可以直接调度到第一本地存储单元,避免因为需要先将第一本地存储单元中的冷数据调度出去而产生的性能开销。此外,第一本地存储单元中预留空间,在将目标数据迁移进来的同时,还可以将第一本地存储单元中的冷数据向外迁出,实现并行操作,从而提高数据迁移效率。
又例如,还可对远端节点的第一存储单元预留一定的空间,避免将冷数据优先调度到远端节点的第一存储单元时缺乏空间而产生的再调度开销。
根据本公开另一实施例,数据处理模块可以包括基础资源识别子模块、内存管理子模块、数据访问频率统计子模块和数据调度子模块。
基础资源识别子模块用于负责识别NUMA结构中的CPU个数,每个CPU拥有的第一存储单元的空间大小、第一存储单元的地址范围、第二存储单元的空间大小、第二存储单元的地址范围因本地NUMANode内存区域。
内存管理子模块用于识别第一本地存储单元、第二本地存储单元、第一远端存储单元、第二远端存储单元各自的空间总容量、已用空间容量、空闲空间容量等。
数据访问频率统计子模块用于统计别第一本地存储单元、第二本地存储单元、第一远端存储单元、第二远端存储单元中数据的访问频率。
数据调度子模块用于调度进程、线程到目标数据所属的NUMA node,以及在各存储单元之间调度、迁移数据。
基于上述数据处理方法方法,本公开还提供了一种应用于存储节点的数据处理装置。以下将结合图4对该装置进行详细描述。
图4示意性示出了根据本公开实施例的数据处理装置的结构框图。
如图4所示,该实施例的数据处理装置400可以应用于存储节点,存储节点包括本地节点和远端节点,本地节点和远端节点各自包括第一存储单元和读写速度慢于第一存储单元的第二存储单元,本地节点与处理器相关联;数据处理装置400包括:确定模块410和迁移模块420。
确定模块410用于根据处理器的当前进程,确定被处理器访问的目标数据。在一实施例中,确定模块410可以用于执行前文描述的操作S210,在此不再赘述。
迁移模块420用于在确定目标数据存储于第一预定位置的情况下,将目标数据从第一预定位置迁移至本地节点的第一存储单元。第一预定位置包括以下中的至少一个:本地节点的第二存储单元、远端节点的第一存储单元和远端节点的第二存储单元。在一实施例中,迁移模块420可以用于执行前文描述的操作S220,在此不再赘述。
根据本公开另一实施例,迁移模块包括:冷数据确定子模块、第一迁移子模块和第二迁移子模块。冷数据确定子模块用于响应于检测到本地节点的第一存储单元的剩余存储空间小于目标数据的占用空间,根据本地节点的第一存储单元中的数据的访问频率,确定本地节点的第一存储单元中的冷数据;第一迁移子模块用于将冷数据从本地节点的第一存储单元迁移至第二预定位置;第二迁移子模块用于将目标数据从第一预定位置迁移至本地节点的第一存储单元。
根据本公开另一实施例,第二预定位置包括N个存储区,N是大于等于2的整数;第一迁移子模块包括:确定单元和第一迁移单元。确定单元用于根据N个存储区的优先级、冷数据的占用空间和N个存储区各自的剩余存储空间,从N个存储区中确定目标存储区;第一迁移单元用于将冷数据从本地节点的第一存储单元迁移至目标存储区。
根据本公开另一实施例,确定单元包括执行子单元,用于在确定N个存储区中至少一个存储区的剩余存储空间大于等于冷数据的占用空间的情况下,重复执行以下操作,直至得到目标存储区:将N个存储区中优先级最高的存储区,确定为当前存储区;确定当前存储区的剩余存储空间是否大于等于冷数据的占用空间;若是,则将当前存储区确定为目标存储区;以及若否,则从N个存储区中删除当前存储区。
根据本公开另一实施例,确定单元包括:分块子单元和确定子单元。分块子单元用于在确定N个存储区中每个存储区的剩余存储空间小于冷数据的占用空间的情况下,根据N个存储区的优先级、冷数据的占用空间和N个存储区各自的剩余空间,对冷数据进行分块处理,得到至少两个数据块;确定子单元用于从N个存储区中确定与至少两个数据块一一对应的至少两个目标存储区。
根据本公开另一实施例,迁移模块包括第三迁移子模块,用于响应于检测到本地节点的第一存储单元的剩余存储空间大于等于目标数据的占用空间,将目标数据从第一预定位置迁移至本地节点的第一存储单元。
根据本公开另一实施例,目标数据的数量是多个,多个目标数据包括已迁移数据和未迁移数据;迁移模块包括第四迁移子模块,用于响应于检测到已迁移数据的数据量与多个目标数据的数据量之间的比值大于等于比值阈值,将未迁移数据从第一预定位置迁移至本地节点的第一存储单元。
根据本公开另一实施例,第四迁移子模块包括:候选确定单元、第二迁移单元、删除单元以及返回单元。候选确定单元用于根据多个目标数据的访问顺序,从未迁移数据中确定当前候选数据;第二迁移单元用于将当前候选数据迁移至本地节点的第一存储单元;删除单元用于从未迁移数据中删除当前候选数据;返回单元用于响应于检测到当前候选数据被访问,返回确定当前候选数据的操作,直至未迁移数据的数量是0。
根据本公开的实施例,确定模块410和迁移模块420中的任意多个模块可以合并在一个模块中实现,或者其中的任意一个模块可以被拆分成多个模块。或者,这些模块中的一个或多个模块的至少部分功能可以与其他模块的至少部分功能相结合,并在一个模块中实现。根据本公开的实施例,确定模块410和迁移模块420中的至少一个可以至少被部分地实现为硬件电路,例如现场可编程门阵列(FPGA)、可编程逻辑阵列(PLA)、片上系统、基板上的系统、封装上的系统、专用集成电路(ASIC),或可以通过对电路进行集成或封装的任何其他的合理方式等硬件或固件来实现,或以软件、硬件以及固件三种实现方式中任意一种或以其中任意几种的适当组合来实现。或者,确定模块410和迁移模块420中的至少一个可以至少被部分地实现为计算机程序模块,当该计算机程序模块被运行时,可以执行相应的功能。
图5示意性示出了根据本公开实施例的适于实现数据处理方法的电子设备的方框图。
如图5所示,根据本公开实施例的电子设备500包括处理器501,其可以根据存储在只读存储器(ROM)502中的程序或者从存储部分508加载到随机访问存储器(RAM)503中的程序而执行各种适当的动作和处理。处理器501例如可以包括通用微处理器(例如CPU)、指令集处理器和/或相关芯片组和/或专用微处理器(例如,专用集成电路(ASIC))等等。处理器501还可以包括用于缓存用途的板载存储器。处理器501可以包括用于执行根据本公开实施例的方法流程的不同动作的单一处理单元或者是多个处理单元。
在RAM 503中,存储有电子设备500操作所需的各种程序和数据。处理器501、ROM502以及RAM 503通过总线504彼此相连。处理器501通过执行ROM 502和/或RAM503中的程序来执行根据本公开实施例的方法流程的各种操作。需要注意,所述程序也可以存储在除ROM502和RAM 503以外的一个或多个存储器中。处理器501也可以通过执行存储在所述一个或多个存储器中的程序来执行根据本公开实施例的方法流程的各种操作。
根据本公开的实施例,电子设备500还可以包括输入/输出(I/O)接口505,输入/输出(I/O)接口505也连接至总线504。电子设备500还可以包括连接至I/O接口505的以下部件中的一项或多项:包括键盘、鼠标等的输入部分506;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分507;包括硬盘等的存储部分508;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分509。通信部分509经由诸如因特网的网络执行通信处理。驱动器510也根据需要连接至I/O接口505。可拆卸介质511,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器510上,以便于从其上读出的计算机程序根据需要被安装入存储部分508。
本公开还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例中描述的设备/装置/系统中所包含的;也可以是单独存在,而未装配入该设备/装置/系统中。上述计算机可读存储介质承载有一个或者多个程序,当上述一个或者多个程序被执行时,实现根据本公开实施例的方法。
根据本公开的实施例,计算机可读存储介质可以是非易失性的计算机可读存储介质,例如可以包括但不限于:便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。例如,根据本公开的实施例,计算机可读存储介质可以包括上文描述的ROM 502和/或RAM 503和/或ROM 502和RAM 503以外的一个或多个存储器。
本公开的实施例还包括一种计算机程序产品,其包括计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。当计算机程序产品在计算机系统中运行时,该程序代码用于使计算机系统实现本公开实施例所提供的物品推荐方法。
在该计算机程序被处理器501执行时执行本公开实施例的系统/装置中限定的上述功能。根据本公开的实施例,上文描述的系统、装置、模块、单元等可以通过计算机程序模块来实现。
在一种实施例中,该计算机程序可以依托于光存储器件、磁存储器件等有形存储介质。在另一种实施例中,该计算机程序也可以在网络介质上以信号的形式进行传输、分发,并通过通信部分509被下载和安装,和/或从可拆卸介质511被安装。该计算机程序包含的程序代码可以用任何适当的网络介质传输,包括但不限于:无线、有线等等,或者上述的任意合适的组合。
在这样的实施例中,该计算机程序可以通过通信部分509从网络上被下载和安装,和/或从可拆卸介质511被安装。在该计算机程序被处理器501执行时,执行本公开实施例的系统中限定的上述功能。根据本公开的实施例,上文描述的系统、设备、装置、模块、单元等可以通过计算机程序模块来实现。
根据本公开的实施例,可以以一种或多种程序设计语言的任意组合来编写用于执行本公开实施例提供的计算机程序的程序代码,具体地,可以利用高级过程和/或面向对象的编程语言、和/或汇编/机器语言来实施这些计算程序。程序设计语言包括但不限于诸如Java,C++,python,“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
本领域技术人员可以理解,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合或/或结合,即使这样的组合或结合没有明确记载于本公开中。特别地,在不脱离本公开精神和教导的情况下,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合和/或结合。所有这些组合和/或结合均落入本公开的范围。
以上对本公开的实施例进行了描述。但是,这些实施例仅仅是为了说明的目的,而并非为了限制本公开的范围。尽管在以上分别描述了各实施例,但是这并不意味着各个实施例中的措施不能有利地结合使用。本公开的范围由所附权利要求及其等同物限定。不脱离本公开的范围,本领域技术人员可以做出多种替代和修改,这些替代和修改都应落在本公开的范围之内。

Claims (12)

1.一种应用于存储节点的数据处理方法,所述存储节点包括本地节点和远端节点,所述本地节点和所述远端节点各自包括第一存储单元和读写速度慢于第一存储单元的第二存储单元,所述本地节点与处理器相关联;所述方法包括:
根据所述处理器的当前进程,确定被所述处理器访问的目标数据;以及
在确定所述目标数据存储于第一预定位置的情况下,将所述目标数据从所述第一预定位置迁移至所述本地节点的第一存储单元;
其中,所述第一预定位置包括以下中的至少一个:所述本地节点的第二存储单元、所述远端节点的第一存储单元和所述远端节点的第二存储单元。
2.根据权利要求1所述的方法,其中,所述将所述目标数据从所述第一预定位置迁移至所述本地节点的第一存储单元包括:
响应于检测到所述本地节点的第一存储单元的剩余存储空间小于所述目标数据的占用空间,根据所述本地节点的第一存储单元中的数据的访问频率,确定所述本地节点的第一存储单元中的冷数据;
将所述冷数据从所述本地节点的第一存储单元迁移至第二预定位置;以及
将所述目标数据从所述第一预定位置迁移至所述本地节点的第一存储单元。
3.根据权利要求2所述的方法,其中,所述第二预定位置包括N个存储区,N是大于等于2的整数;所述将所述冷数据从所述本地节点的第一存储单元迁移至第二预定位置包括:
根据所述N个存储区的优先级、所述冷数据的占用空间和N个存储区各自的剩余存储空间,从所述N个存储区中确定目标存储区;以及
将所述冷数据从所述本地节点的第一存储单元迁移至所述目标存储区。
4.根据权利要求3所述的方法,其中,所述根据所述N个存储区的优先级、所述冷数据的占用空间和N个存储区各自的剩余存储空间,从所述N个存储区中确定目标存储区包括:
在确定所述N个存储区中至少一个存储区的剩余存储空间大于等于所述冷数据的占用空间的情况下,重复执行以下操作,直至得到目标存储区:
将所述N个存储区中优先级最高的存储区,确定为当前存储区;
确定所述当前存储区的剩余存储空间是否大于等于所述冷数据的占用空间;
若是,则将所述当前存储区确定为所述目标存储区;以及
若否,则从所述N个存储区中删除所述当前存储区。
5.根据权利要求3所述的方法,其中,所述根据所述N个存储区的优先级、所述冷数据的占用空间和N个存储区各自的剩余存储空间,从所述N个存储区中确定目标存储区包括:
在确定所述N个存储区中每个存储区的剩余存储空间小于所述冷数据的占用空间的情况下,根据N个存储区的优先级、所述冷数据的占用空间和所述N个存储区各自的剩余空间,对所述冷数据进行分块处理,得到至少两个数据块;以及
从所述N个存储区中确定与至少两个数据块一一对应的至少两个目标存储区。
6.根据权利要求1所述的方法,其中,所述将所述目标数据从所述第一预定位置迁移至所述本地节点的第一存储单元包括:
响应于检测到所述本地节点的第一存储单元的剩余存储空间大于等于所述目标数据的占用空间,将所述目标数据从所述第一预定位置迁移至所述本地节点的第一存储单元。
7.根据权利要求1至6中任意一项所述的方法,其中,所述目标数据的数量是多个,多个目标数据包括已迁移数据和未迁移数据;将所述目标数据从所述第一预定位置迁移至所述本地节点的第一存储单元包括:
响应于检测到所述已迁移数据的数据量与所述多个目标数据的数据量之间的比值大于等于比值阈值,将所述未迁移数据从所述第一预定位置迁移至所述本地节点的第一存储单元。
8.根据权利要求7所述的方法,其中,将所述未迁移数据从所述第一预定位置迁移至所述本地节点的第一存储单元包括:
根据所述多个目标数据的访问顺序,从所述未迁移数据中确定当前候选数据;
将所述当前候选数据迁移至所述本地节点的第一存储单元;
从所述未迁移数据中删除所述当前候选数据;以及
响应于检测到所述当前候选数据被访问,返回确定当前候选数据的操作,直至所述未迁移数据的数量是0。
9.一种应用于存储节点的数据处理装置,所述存储节点包括本地节点和远端节点,所述本地节点和所述远端节点各自包括第一存储单元和读写速度慢于第一存储单元的第二存储单元,所述本地节点与处理器相关联;所述方法包括:
确定模块,用于根据所述处理器的当前进程,确定被所述处理器访问的目标数据;以及
迁移模块,用于在确定所述目标数据存储于第一预定位置的情况下,将所述目标数据从所述第一预定位置迁移至所述本地节点的第一存储单元;
其中,所述第一预定位置包括以下中的至少一个:所述本地节点的第二存储单元、所述远端节点的第一存储单元和所述远端节点的第二存储单元。
10.一种电子设备,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器执行根据权利要求1~8中任一项所述的方法。
11.一种计算机可读存储介质,其上存储有可执行指令,该指令被处理器执行时使处理器执行根据权利要求1~8中任一项所述的方法。
12.一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现根据权利要求1~8中任一项所述的方法。
CN202211322047.0A 2022-10-26 2022-10-26 应用于存储节点的数据处理方法、装置、设备及存储介质 Pending CN115599304A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211322047.0A CN115599304A (zh) 2022-10-26 2022-10-26 应用于存储节点的数据处理方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211322047.0A CN115599304A (zh) 2022-10-26 2022-10-26 应用于存储节点的数据处理方法、装置、设备及存储介质

Publications (1)

Publication Number Publication Date
CN115599304A true CN115599304A (zh) 2023-01-13

Family

ID=84850425

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211322047.0A Pending CN115599304A (zh) 2022-10-26 2022-10-26 应用于存储节点的数据处理方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN115599304A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116483740A (zh) * 2023-06-21 2023-07-25 苏州浪潮智能科技有限公司 内存数据的迁移方法、装置、存储介质及电子装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116483740A (zh) * 2023-06-21 2023-07-25 苏州浪潮智能科技有限公司 内存数据的迁移方法、装置、存储介质及电子装置
CN116483740B (zh) * 2023-06-21 2023-09-05 苏州浪潮智能科技有限公司 内存数据的迁移方法、装置、存储介质及电子装置

Similar Documents

Publication Publication Date Title
US8996811B2 (en) Scheduler, multi-core processor system, and scheduling method
CN110018914B (zh) 基于共享内存的消息采集方法及装置
US20140380322A1 (en) Task Scheduling for Highly Concurrent Analytical and Transaction Workloads
US20130013864A1 (en) Memory access monitor
US8510738B2 (en) Preventing unnecessary context switching by employing an indicator associated with a lock on a resource
US20210109796A1 (en) Methods and systems for time-bounding execution of computing workflows
US20180032376A1 (en) Apparatus and method for group-based scheduling in multi-core processor system
US9361118B2 (en) Method for memory consistency among heterogeneous computer components
US8024739B2 (en) System for indicating and scheduling additional execution time based on determining whether the execution unit has yielded previously within a predetermined period of time
EP3944091B1 (en) Cache allocation method and device, storage medium, and electronic device
CN114168271B (zh) 一种任务调度方法、电子设备及存储介质
US9547576B2 (en) Multi-core processor system and control method
US8296552B2 (en) Dynamically migrating channels
CN115599304A (zh) 应用于存储节点的数据处理方法、装置、设备及存储介质
US8862786B2 (en) Program execution with improved power efficiency
US11693708B2 (en) Techniques for increasing the isolation of workloads within a multiprocessor instance
CN113076224A (zh) 数据备份方法、数据备份系统、电子设备及可读存储介质
CN112015529A (zh) 数据任务调度方法、系统、电子设备及存储介质
CN101847128A (zh) 管理tlb的方法和装置
US9513973B2 (en) Device and method for synchronizing tasks executed in parallel on a platform comprising several calculation units
US20120159640A1 (en) Acquiring Access To A Token Controlled System Resource
CN115373822A (zh) 任务调度方法、任务处理方法、装置、电子设备和介质
CN113485838A (zh) 服务器分配方法及装置、电子设备和计算机可读存储介质
CN117093335A (zh) 分布式存储系统的任务调度方法及装置
CN114968552A (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