CN111273860B - 一种基于网络和页粒度管理的分布式内存管理方法 - Google Patents
一种基于网络和页粒度管理的分布式内存管理方法 Download PDFInfo
- Publication number
- CN111273860B CN111273860B CN202010041186.0A CN202010041186A CN111273860B CN 111273860 B CN111273860 B CN 111273860B CN 202010041186 A CN202010041186 A CN 202010041186A CN 111273860 B CN111273860 B CN 111273860B
- Authority
- CN
- China
- Prior art keywords
- page
- memory
- cache
- gpm
- data
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
- G06F3/0611—Improving I/O performance in relation to response time
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0877—Cache access modes
- G06F12/0882—Page mode
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
- G06F3/0613—Improving I/O performance in relation to throughput
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/064—Management of blocks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
本发明公开了一种基于网络和页粒度管理的分布式内存管理方法,其特点是全局地址采用节点、页和块的内存管理方法,将来自不同的节点的部分内存封装在全局基于页面的内存(GPM)中并支持页粒度下的数据传输,基于更新的内存一致性协议进行内存管理,使本地缓存页面上的数据与GPM上的数据一致,以及部署在PDMM中的高层应用程序透明地访问GPM,实现低延迟、高吞吐量的节点间访问。本发明与现有技术相比具有低延迟和高吞吐量的节点间访问延迟,方法简单,使用方便,有效解决了数据密集型工作中由于写操作导致的缓存无效的问题,使得PDMM的性能优于其他同类型产品。
Description
技术领域
本发明涉及分布式内存管理技术领域,尤其是一种基于网络和页粒度 的分布式内存管理方法。
背景技术
随着,单个计算机服务器性能扩展的变慢,人们开始通过支持RDMA 网络的低延迟的远程访问原语跨服务器地开创类似NUMA架构的分布式内 存管理平台。在一个纯NUMA架构下,这些平台(例如FaRM,Rack-Out 和GAM)为内存管理和RDMA操作提供了对象级别的粒度。和本地内存访 问相比,依次部署在GAM和FaRM上的InfiniBand QDR和RoCE的延迟, 几乎是在本地上的25倍和100倍。因此,在分布式内存管理平台中的NUMA 架构上的节点间的访问延迟会显著地降低应用程序的执行速度,数据密集型 应用尤其令人担心。节点间的延迟对网络分区阶段有着很大的影响,当访问 一个小的数据块时(在IB QDR上<8KB;在RoCE上<16KB),CPU内核很 快就能结束分区任务,但不得不等待没有到来的任务数据。为了饱和CPU 内核,更大的数据访问尺寸可以帮助CPU隐藏节点间的访问延迟,专注于 分区任务。尽管C.Barthels等人已经提出在RDMA网络上的分布式基数哈希 连接的优化实现,但目前的分布式内存管理平台仍然缺少一个通用的机制去 克服节点间访问延迟的障碍。
现有技术的分布式内存管理存在着节点间的访问延迟和数据密集型工 作中由于写操作导致的缓存无效的问题。数据密集型工作负载的偏斜动态特 性,几个分布式内存管理平台(例如GAM和ccKVS)都采用了有效的缓存 技术来减轻负载不平衡和网络延迟。这些缓存技术尝试将副本中最热的数据 项分布在服务器之间,以跟上负载。但缓存最热的数据项只能适应KVSs中 不平衡的场景,而无法处理其他的数据密集型应用。在数据密集型工作负载 中经常被访问的缓存数据块很容易因为零散的写操作过期,这些操作大多数 需要保持数据一致性(例如,失效和更新),缓存频繁地换入、换出导致平 台难以支持此类应用的性能。
发明内容
本发明的目的是针对现有技术的不足而设计的一种基于网络和页粒度 管理的分布式内存管理方法,采用全局地址的节点、页和块的内存管理方法, 将来自不同的节点的部分内存封装在全局基于页面的内存中并支持页粒度 下数据传输,基于更新的内存一致性协议,使本地缓存页面上的数据与GPM 上的数据一致,以及部署在PDMM中的高层应用程序透明地访问GPM,实 现低延迟和高吞吐量的节点间访问延迟,方法简单,使用方便,有效解决了 数据密集型工作中由于写操作导致的缓存无效的问题。
本发明的目的是这样实现的:一种基于网络和页粒度管理的分布式内 存管理方法,其特点是全局地址采用节点、页和块的内存管理方法,将来自 不同的节点的部分内存封装在全局基于页面的内存(GPM)中并支持页粒度 下的数据传输,基于更新的内存一致性协议进行内存管理,使本地缓存页面 上的数据与GPM上的数据一致,以及部署在PDMM中的高层应用程序透明 地访问GPM,实现低延迟、高吞吐量的节点间访问。
所述将来自不同节点的部分内存封装在GPM中并支持页粒度下的数据 传输,其内存管理如下:
A1:GPM是PDMM的核心部分,由固定大小的内存单元形成,向应 用程序提供了一个64位的全局地址,并将其按前20位、中间22位和后22 位分为三个部分,所述前20位表示集群中的对应节点;所述中间22位指向 全局地址所在的页面;所述后22位可以索引页面上的一个指定内存块。
A2:将页面大小设置为4KB,其页面空间被划分成一组连续的块,在 一个节点上,页拥有不同大小的块,当用户请求内存空间时,会在适合它的 最小大小的块中快速分配,而不是调用系统内核分配内存,所有上述的页、 块管理在集群启动的过程中均会被初始化。
所述基于更新的内存一致性协议,使本地缓存页面上的数据与GPM上 的数据一致,其内存管理如下:
B1:基于更新的内存一致性协议将本地缓存页面划分为无效、等待、 共享、更新和独占五个状态,并将其保持在目录中,所述无效为缓存的页面 副本无效;所述等待为缓存页面已发出丢失的内容,正在等待答复;所述共 享为缓存页面被多个其他节点共享,写操作必须更新缓存页面的其他副本; 所述更新为缓存页面的副本正在被更新;所述独占为缓存页面是内存页面唯 一的副本。
B2:基于更新的内存一致性协议将内存页面划分为缺页、共享、独占 和等待四个状态,并将其保存在目录中,所述缺页为内存页面的缓存副本不 存在;所述共享为至少有一个缓存页面和内存页面一致;所述独占为内存页 面只有唯一的缓存页面;所述等待为内存页面正在等待一个写操作。
本发明与现有技术相比具有低延迟和高吞吐量的节点间访问延迟,方法 简单,使用方便,有效解决了数据密集型工作中由于写操作导致的缓存无效 的问题,使得PDMM的性能优于其他同类型产品。
附图说明
图1为本发明的内存管理示意图;
图2为PDMM中内存访问和同步操作的编程示意图;
图3为缺页内存页面的读请求操作流程图;
图4为独占内存页面的读请求操作流程图;
图5为共享内存页面的读请求操作流程图;
图6为缺页内存页面的写请求操作流程图;
图7为独占内存页面的写请求操作流程图;
图8为共享内存页面的写请求操作流程图;
图9为PDMM和GAM在不同页面大小下的延迟比较;
图10为PDMM和GAM在不同页面大小下的吞吐量比较;
图11为GAM、PDMM-INV和PDMM在不同更新操作率下的读取延 迟比较。
具体实施方式
下面以具体实施例对本发明作进一步的详细说明。
实施例1
本发明按下述表1的PDMM接口进行连接:
表1:PDMM接口
PDMM对外提供的接口连接后,Malloc和Free函数允许应用程序从 GPM上创建或者释放一块内存,其分布式内存管理按下述步骤进行:
(一)分配请求
参阅附图1,节点处理一个分配请求(见附图1中代码块第2行),首 先尝试根据给定的大小参数在本地内存分配恰好大小的内存空间,如果申请 的内存大小超过当前节点剩余的内存空间,那么该节点将根据元数据向集群 上的另一个节点转发分配请求。
(二)内存访问
参阅附图2,在GPM上访问到的数据应该被提取为一个页面,放在缓 存页面中,Read操作将缓存页面的数据(使用默认的系统寻址)链接到一个 对象指针(29行),并将对象指针返回给应用程序(30行),以应付频繁地 使用库函数。同时,Write操作将新数据更新进全局内存,修改相关缓存页 (31行)。另外,PDMM还提供了一个WriteNoUpdate操作(34行),它只 更新它本地的缓存页,而不立刻同步所有节点的缓存页和GPM。
(三)同步操作
参阅附图2,读锁和写锁都需要在全局地址范围锁住数据,读锁是共享 的,写锁是独占的,在相同的全局地址范围申请读锁的线程可以被授予读权 限。例如,在query_num函数中第15行的代码在left_num上加了读锁,同 时多线程也可以调用读锁接口在left_num上添加读锁。但是,在28行的写 锁是一个独占锁,它意味着成功的写锁可以拒绝被锁定的全局地址空间上的 任何锁请求。buy函数上的写锁解释了left_num应该只被一个应用线程访问。 Mfence尝试将最新的写缓冲区中的已写数据同步到GPM中,同步所有缓存 页面,代替无效的缓存页面,Mfence操作可以保证读操作在提交前读取到最 新的数据。例如,在query_order函数中第22行代码将写缓冲区(34行)中 的有序数据同步到全局内存和缓存页面中。
(四)读操作
如果一个读命中了本地页面缓存中的缓存页面,它会直接访问缓存页面 而不是全局内存。对于读取未命中,它的工作流程可以根据前面提到的内存 页面的状态被分成缺页、独占和共享三个类型,其具体操作如下:
a、缺页内存页面的读请求
参阅附图3,当对一个拥有请求页面的全局内存所在的节点读未命中时, 首先将本地请求页面的状态标记为“等待”。获得读请求后(2),全局内存 节点意识到在内存目录上请求页面的状态是“缺页”(3),因此,将请求页 面回复给缓存节点(4.1)。同时,全局内存节点会将请求页面的状态标记成 “独占”,并且标记缓存节点N0为此页面的拥有者(4.2)。N0节点收到回 复的请求页面,会将本地缓存上的页面状态标记为“独占”(5)。
b、独占内存页面的读请求
参阅附图4,当接收到读请求后,全局内存节点发现当前页面状态是“独 占”(3),将页面状态设置为“等待”(4.1),并且将读请求转发给拥有者N1 (4.2)。N1在接收到转发的请求后,将请求页面回复给节点N0(5.1)。最 后,N0节点和N1节点都将缓存页面状态标记为“共享”(6.1,6.2),全局 内存节点也将页面状态标记为“共享”,同时将N0,N1添加进共享链表中 (6.3)。
c、共享内存页面的读请求
参阅附图5,当接收到读请求,全局内存节点发现请求页面已经被N1 节点和N2节点共享,于是,它向N0节点回复请求页面(4.1),并将N0节 点添加进共享链表中(4.2)。最后,N0节点标记请求页面为“共享”(5)。
(五)写操作
向处于缺页状态的内存页面的写入请求必须是一个写入未命中,然而, 向处于独占或共享状态的内存页面的写入请求可以涉及到两种类型,即写未 命中和写命中,其具体操作如下:
a、缺页内存页面的写请求
参阅附图6,写入缓存节点N0首先将请求页面标记为“等待”,然后 N0节点向全局内存发出一个写未命中(2),收到写入未命中后,包含请求 页面的全局内存节点意识到请求页面状态为“缺页”(3),于是将请求页面 回复给N0(4.1),并且将页面状态重新标记为“独占”(4.2);接收到回复 的请求页面,N0节点尝试向缓存页面写入数据(5),N0节点结束写入操作 后,将请求页面的状态标记为“独占”(5)。
b、独占内存页面的写请求
参阅附图7,如果N0节点写入未命中请求的页面,它将标记请求页面的 状态为“等待”(4.1),并向全局内存发送带有最新数据的写未命中(2)。收到 请求后,全局内存意识到请求页面的拥有者节点是N1(3),于是将页面状态标 记为“等待”(4.1),并将接收到的数据转发给N1(4.2)。N1将接收到的数据 更新到缓存页面,然后将最新的缓存页面写回全局内存(5.1)并且回复给N0 (5.2)。最后,N0,N1和全局内存同时将页面状态重新标记为“共享”(6.1, 6.2,6.3)。如果N0碰到“独占”页面拥有者是自己,即写入命中请求的页面, 则N0会将页面状态标记为“等待”,然后将数据直接写入缓存的页面,写完后 N0会将页面状态重新标记为“独占”。
c、共享内存页面的写请求
参阅附图8,不管写缓存节点N0是否命中请求页面,“共享”内存页 面的工作流程是相似的,N0标记请求页面为“等待”(1),并向全局内存发 送一个带有最新数据的写入请求(2),全局内存读取内存目录,意识到请求 页面被N1和N2两个节点共享(3),于是将页面状态标记为“等待”(4) 并且将数据写入内存中(5),向节点N0回复更新的页面和共享缓存节点的 数量(6.1),同时全局内存向N1和N2上的缓存页面转发接收到的数据(6.2)。 每个共享缓存节点向N0发送一个确认写入的通知来表示自己已经更新了本 地缓存页面(7),在N0中每次接收到确认通知,都会从共享缓存节点数中 减一。当共享数量变成0,N0会通知全局内存(8),全局内存将N0添加进 共享链表中(9.1),最后N0和全局内存将页面状态重新标记为“共享”(9.2)。
对本发明基于页粒度的访问延迟和吞吐量进行评估:
参阅附图9,将PDMM与GAM(GAM也属于用户级别的分布式内存 平台)作比较,从延迟来看,在PDMM上运行的NoSQL原型优于在GAM 上运行的。例如,在512B页大小下,PDMM上的读取和更新操作分别有 19.45μs和27.353μs的延迟,这大大小于GAM上的34.133μs和45.457μs的 延迟。这是因为首次访问记录时,由于PDMM上的页访问粒度,所以可以 将顺序记录作为页面获取到本地缓存中,但是GAM上的操作必须访问很多 次,直到找到匹配的记录。由于迭代记录对于执行所有操作类型都是必不可 少的,因此PDMM的延迟要比GAM低。
参阅附图10,在512B页面大小下,PDMM节点每秒能够处理83.32K 个操作请求,而GAM节点每秒只能处理41.93K个操作请求,PDMM和GAM 上的吞吐量可以进一步反映页访问粒度的优势。
对本发明基于更新的内存一致性协议的读取延迟进行评估:
更新操作占所有操作的比率是影响PDMM性能最敏感的因素之一,因 为较多的更新操作会导致频繁的节点间通信。因此,本发明实现了一个基于 无效的内存一致性协议的PDMM变体,并称其为PDMM-INV,以比较基于 更新的内存一致性协议和基于无效的协议的效率,在更新操作率从10~90% 的工作负载下比较PDMM,PDMM-INV和GAM的读取延迟。
参阅附图11,随着更新操作率的增加,GAM、PDMM-INV和PDMM之 间的读取等待时间差距逐渐增大。例如,当更新操作率为10%时,PDMM的 读取延迟为17.026μs,GAM和PDMM-INV的读取延迟为30.02μs和22.342μs。 但是对于90%的更新操作率,PDMM仅具有29.858μs的读取延迟,GAM和 PDMM-INV分别具有44.392μs和46.048μs。这是因为GAM和PDMM-INV 都采用了基于无效的协议,该协议可能经常使缓存的数据无效,并导致在高 更新率下丢失大量读取缓存。
以上只是对本发明做进一步说明,并非用以限制本专利,凡为本发明等 效实施,均应包含于本专利的权利要求范围之内。
Claims (1)
1.一种基于网络和页粒度管理的分布式内存管理方法,其特征在于全局地址采用节点、页和块的内存管理方法,将来自不同的节点的部分内存封装在全局基于页面的内存中并支持页粒度下的数据传输,基于更新的内存一致性协议进行内存管理,使本地缓存页面上的数据与GPM上的数据一致,以及部署在PDMM中的高层应用程序透明地访问GPM,实现低延迟、高吞吐量的节点间访问,所述GPM为全局基于页面的内存;所述将来自不同节点的部分内存封装在GPM中并支持页粒度下的数据传输的内存管理实现如下:
A1:将GPM向应用程序提供的64位全局地址按前20位、中间22位和后22位分为三个部分,所述前20位表示集群中的对应节点;所述中间22位指向全局地址所在的页面;所述后22位可以索引页面上的一个指定内存块;
A2:将页面设置为4KB,其空间被分成一组连续的块,且在一个节点上拥有不同大小的块,当用户请求内存空间时,在适合它大小的最小块中进行快速分配,所述页、块在集群启动过程中均被初始化;所述基于更新的内存一致性协议采用五个或四个状态的内存管理,使本地缓存页面上的数据与GPM上的数据一致,所述五个状态的内存管理:基于更新的内存一致性协议将本地缓存页面划分为无效、等待、共享、更新和独占五个状态,并将其保持在目录中,所述无效为缓存的页面副本无效;所述等待为缓存页面已发出丢失的内容,正在等待答复;所述共享为缓存页面被多个其他节点共享,写操作必须更新缓存页面的其他副本;所述更新为缓存页面的副本正在被更新;所述独占为缓存页面是内存页面唯一的副本;所述四个状态的内存管理:基于更新的内存一致性协议将内存页面划分为缺页、共享、独占和等待四个状态,并将其保存在目录中,所述缺页为内存页面的缓存副本不存在;所述共享为至少有一个缓存页面和内存页面一致;所述独占为内存页面只有唯一的缓存页面;所述等待为内存页面正在等待一个写操作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010041186.0A CN111273860B (zh) | 2020-01-15 | 2020-01-15 | 一种基于网络和页粒度管理的分布式内存管理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010041186.0A CN111273860B (zh) | 2020-01-15 | 2020-01-15 | 一种基于网络和页粒度管理的分布式内存管理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111273860A CN111273860A (zh) | 2020-06-12 |
CN111273860B true CN111273860B (zh) | 2022-07-08 |
Family
ID=70997122
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010041186.0A Active CN111273860B (zh) | 2020-01-15 | 2020-01-15 | 一种基于网络和页粒度管理的分布式内存管理方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111273860B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113342465B (zh) * | 2021-06-18 | 2022-06-21 | 上海交通大学 | 一种基于释放一致性内存同步的巨型虚拟机 |
CN114253733B (zh) * | 2021-12-24 | 2024-01-12 | 苏州浪潮智能科技有限公司 | 一种内存管理方法、装置、计算机设备和存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103246616A (zh) * | 2013-05-24 | 2013-08-14 | 浪潮电子信息产业股份有限公司 | 一种长短周期访问频度的全局共享缓存替换方法 |
CN104268094A (zh) * | 2014-09-23 | 2015-01-07 | 浪潮电子信息产业股份有限公司 | 一种优化的闪存地址映射方法 |
CN108932154A (zh) * | 2018-07-23 | 2018-12-04 | 上海交通大学 | 一种分布式虚拟机管理器 |
-
2020
- 2020-01-15 CN CN202010041186.0A patent/CN111273860B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103246616A (zh) * | 2013-05-24 | 2013-08-14 | 浪潮电子信息产业股份有限公司 | 一种长短周期访问频度的全局共享缓存替换方法 |
CN104268094A (zh) * | 2014-09-23 | 2015-01-07 | 浪潮电子信息产业股份有限公司 | 一种优化的闪存地址映射方法 |
CN108932154A (zh) * | 2018-07-23 | 2018-12-04 | 上海交通大学 | 一种分布式虚拟机管理器 |
Non-Patent Citations (1)
Title |
---|
基于分布式系统OceanBase的并行连接;徐石磊等;《华东师范大学学报》;20170930;第1-10页 * |
Also Published As
Publication number | Publication date |
---|---|
CN111273860A (zh) | 2020-06-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10073778B1 (en) | Caching in multicore and multiprocessor architectures | |
US7711902B2 (en) | Area effective cache with pseudo associative memory | |
US5897664A (en) | Multiprocessor system having mapping table in each node to map global physical addresses to local physical addresses of page copies | |
US6141692A (en) | Directory-based, shared-memory, scaleable multiprocessor computer system having deadlock-free transaction flow sans flow control protocol | |
US10055349B2 (en) | Cache coherence protocol | |
US8417915B2 (en) | Alias management within a virtually indexed and physically tagged cache memory | |
JP3399501B2 (ja) | 分割フェーズ制御を用いる明示的コヒーレンス | |
US6088769A (en) | Multiprocessor cache coherence directed by combined local and global tables | |
KR100348200B1 (ko) | Ccr 디렉토리 | |
JP3096414B2 (ja) | ディレクトリ内にアドレス・タグを記憶するためのコンピュータ | |
US7613884B2 (en) | Multiprocessor system and method ensuring coherency between a main memory and a cache memory | |
US9208088B2 (en) | Shared virtual memory management apparatus for providing cache-coherence | |
CN105740164A (zh) | 支持缓存一致性的多核处理器、读写方法、装置及设备 | |
JPH10143482A (ja) | エフィシェントな書込み動作を実行するマルチプロセッサ・システム | |
JP2006277762A (ja) | 分散共有メモリマルチプロセッサシステムのための分割疎ディレクトリ | |
WO2002073417A1 (en) | State-based allocation and replacement for improved hit ratio in directory caches | |
US20020078304A1 (en) | System and method for allocating a directory entry for use in multiprocessor-node data processing systems | |
CN111273860B (zh) | 一种基于网络和页粒度管理的分布式内存管理方法 | |
KR980010819A (ko) | 비포함적 메모리 억세스 메커니즘 | |
WO2016131175A1 (zh) | 多核系统中数据访问者目录的访问方法及设备 | |
US6298419B1 (en) | Protocol for software distributed shared memory with memory scaling | |
US7743215B2 (en) | Cache-memory control apparatus, cache-memory control method and computer product | |
US7383390B1 (en) | Resource-limited directories with fine-grained eviction | |
Mendelson et al. | A single cached copy data coherence scheme for multiprocessor systems | |
JPH05210639A (ja) | 複数キャッシュメモリ型式を含む多重プロセッサコンピューターシステム |
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 |