CN104937567B - 用于大共享地址空间的映射机构 - Google Patents
用于大共享地址空间的映射机构 Download PDFInfo
- Publication number
- CN104937567B CN104937567B CN201380072012.9A CN201380072012A CN104937567B CN 104937567 B CN104937567 B CN 104937567B CN 201380072012 A CN201380072012 A CN 201380072012A CN 104937567 B CN104937567 B CN 104937567B
- Authority
- CN
- China
- Prior art keywords
- node
- memory
- mapping
- address
- mapped
- 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
Classifications
-
- 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/10—Address translation
-
- 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/0284—Multiple user address space allocation, e.g. using different base addresses
-
- 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/06—Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
-
- 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/06—Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
- G06F12/0646—Configuration or reconfiguration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1052—Security improvement
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/65—Details of virtual memory and virtual address translation
- G06F2212/656—Address space sharing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本公开提供了用于对计算系统中的大共享地址空间进行映射的技术。一种方法包括创建针对计算系统中的每一个节点的物理地址映射。每一个物理地址映射对节点的存储器进行映射。将每一个物理地址映射复制到单个地址映射以形成对计算系统的所有存储器进行映射的全局地址映射。与计算系统中的所有节点共享全局地址映射。
Description
背景技术
诸如数据中心之类的计算系统包括多个节点。节点包括计算节点和存储节点。节点可通信地耦合并且可以共享节点之间的存储器储存以增加单独的节点的容量。
附图说明
在以下详细描述中并且参照附图描述某些示例性实施例,其中:
图1是计算系统的示例的框图;
图2是全局地址映射的组成的示例的图示;
图3是图示了映射共享存储器地址空间的方法的示例的过程流图;以及
图4是图示了访问所存储的数据对象的方法的示例的过程流图。
具体实施方式
本文所公开的实施例提供了用于对大的共享地址空间进行映射的技术。一般而言,诸如物理存储器和IO设备之类的地址-空间对象专用于特定计算节点,诸如通过物理上存在于计算节点的互连板上,其中互连板是包含构成计算节点的一个或多个处理器的板或板的小型集合。诸如在数据中心中之类的计算节点的部署可以包括大量存储器和IO设备,但是具有物理上嵌入在特定计算节点中并且专用于特定计算节点的部分的这些分区是低效的并且欠佳地适应于要求巨大量的数据和对该数据起作用的大量计算节点的计算问题。计算节点恒定地参与节点间通信以到达包含数据的存储器,而不是计算节点简单地引用它们需要的数据。可替换地,数据可能被严格保存在共享存储设备(诸如硬盘驱动器)上,而不是在存储器中,这显著地增加访问那些数据的时间并且降低总体性能。
特别是数据中心中的计算部署方面的一种趋势是虚拟化计算节点,除其他外这尤其允许从一个物理计算节点向另一个移动虚拟计算节点以及其正在运行的系统环境和工作负载的能力。除其它之外,尤其出于故障容许和功率使用优化的目的而移动虚拟计算节点。然而,当移动虚拟计算节点时,源物理计算节点中的存储器中的数据也被移动(即复制)到目标计算节点中的存储器。对数据进行移动使用相当多的资源(例如能量)并且通常在发生该数据转移的同时挂起(suspend)所讨论的工作负载的执行。
依照本文所描述的技术,计算系统的节点中的存储器存储空间被映射到可由计算系统中的节点访问的全局地址映射。计算节点能够通过访问全局地址映射来直接访问计算系统中的数据,而不管数据在计算系统内的物理位置。通过将数据存储在快速存储器中而同时允许多个计算节点按需直接访问数据,可以改进访问数据的时间和总体性能。此外,通过将数据存储在存储器的共享池(其中的显著量可以是持久性存储器,类似于储存器)中的存储器中,并且将数据映射到源计算节点中,虚拟机迁移可以在不复制数据的情况下发生。另外,由于计算节点的失效并不防止其全局地址映射中的存储器被简单地映射到另一节点,因此使得能够实现附加的故障(fail-over)转移方法。
图1是诸如数据中心之类的计算系统的示例的框图。计算系统100包括数个节点,诸如计算节点102和存储节点104。节点102和104通过诸如数据中心构造(fabric)之类的网络106可通信地耦合到彼此。计算系统100可以包括若干计算节点,诸如数十或甚至数千个计算节点。
计算节点102包括用于执行所存储的指令的中央处理单元(CPU)108。CPU 108可以是单核处理器、多核处理器或任何其它合适的处理器。在示例中,计算节点102包括单个CPU。在另一示例中,计算节点102包括多个CPU,诸如两个CPU、三个CPU或更多。
计算节点102还包括用于将计算节点102连接到网络的网络卡110。网络卡110可以经由总线112通信地耦合到CPU 108。网络卡110是用于联网的IO设备,诸如向计算节点102提供对网络的访问的网络接口控制器(NIC)、聚合网络适配器(CNA)或任何其它设备。在示例中,计算节点102包括单个网络卡。在另一示例中,计算节点102包括多个网络卡。网络可以是局域网(LAN)、广域网(WAN)、互联网或任何其它网络。
计算节点102包括主存储器114。主存储器是易失性存储器,诸如随机存取存储器(RAM)、动态随机存取存储器(DRAM)、只读存储器(ROM)或任何其它合适的存储器系统。物理存储器地址映射(PA)116存储在主存储器114中。PA 116是对主存储器的存储空间进行映射的指针和文件系统表的系统。
除主存储器114之外,计算节点102还包括存储设备118。存储设备118是非易失性存储器,诸如硬驱动器、光学驱动器、诸如闪速驱动器之类的固态驱动器、驱动器阵列或任何其它类型的存储设备。存储设备还可以包括远程储存器。
计算节点102包括输入/输出(IO)设备120。IO设备120包括耦合到计算节点的键盘、鼠标、打印机或任何其它类型的设备。主存储器114的部分可以与IO设备120相关联并且IO设备120可以均包括设备内的存储器。IO设备120还可以包括IO存储设备,诸如光纤信道存储区域网络(FC SAN)、小型计算机系统接口直接附接储存器(SCSi DAS)或任何其它合适的IO存储设备或存储设备的组合。
计算节点102还包括存储器映射的储存器(MMS)控制器122。MMS控制器122通过将持久性储存器容量(即存储设备118和IO设备120)的全部或一些映射到节点102的PA 116中来使存储设备上的持久性存储器对CPU 108可用。持久性存储器是非易失性储存器,诸如存储设备上的储存器。在示例中,MMS控制器112将存储设备118的存储器映射存储在存储设备118自身上并且将存储设备存储器映射的转换置于PA 116中。因此可以通过MMS控制器122来引导对持久性存储器的任何引用以允许CPU 108访问作为存储器的持久性储存器。
MMS控制器122包括MMS描述器124。MMS描述器124是设置持久性存储器的全部或部分到PA 116中的映射的MMS硬件中的寄存器的集合。
计算设备100还包括存储节点104。存储节点104是用于存储大量数据的储存器的集合,诸如存储设备的集合。在示例中,存储节点104被用于对用于计算系统100的数据进行备份。在示例中,存储节点104是盘驱动器的阵列。在示例中,计算设备100包括单个存储节点104。在另一示例中,计算设备100包括多个存储节点104。存储节点104包括对存储节点104的存储空间进行映射的物理地址映射。
计算系统100还包括全局地址管理器126。在示例中,全局地址管理器126是计算系统100的节点,诸如计算节点102或存储节点104,其被指定成,除节点的计算和/或存储活动之外,还充当全局地址管理器126。在另一示例中,全局地址管理器126是仅充当全局地址管理器的计算系统的节点。
全局地址管理器126经由连接106可通信地耦合到节点102和104。全局地址管理器126包括网络卡128以将全局地址管理器126连接到网络,诸如连接106。全局地址管理器126还包括全局地址映射130。全局地址映射130对计算系统100内的节点的所有存储空间进行映射。在另一示例中,全局地址映射130仅对每一个节点选择与计算系统100中的其它节点共享的节点的存储空间进行映射。每一个节点本地主存储器和IO寄存器空间的大区段可以对节点私有而不包括在全局地址映射130中。计算系统100的所有节点可以访问全局地址映射130。在示例中,每一个节点存储链接到全局地址映射130的全局地址映射130的副本,因此每一个副本在更新全局地址映射130时被更新。在另一示例中,全局地址映射130由全局地址管理器126存储并且由计算系统100中的每一个节点任意访问。映射机构(mechanism)将全局地址映射130的部分映射到节点的物理地址映射116。映射机构可以是双向的并且可以存在于远程存储器内以及在节点上。如果计算节点是计算节点与存储器或IO设备之间的仅有事务(transaction)源并且如果PA和全局地址映射二者被存储在计算节点内,则映射机构是单向的。
图1的框图不意图指示计算设备100要包括图1中所示的所有组件。另外,计算设备100可以包括图1中未示出的任何数目的附加组件,这取决于特定实现方式的细节。
图2是全局地址映射202的组成的示例的图示。节点102包括物理地址映射(PA)204。节点102是诸如计算系统100之类的计算系统的计算节点。PA 204对节点102的存储器的所有存储空间进行映射,包括主存储器206、IO设备存储器208和储存器210。PA 204被整体地复制到全局地址映射202。在另一示例中,PA 204仅将节点102与其它节点共享的节点102的元素映射到全局地址映射202。节点本地主存储器和IO寄存器空间的大区段可以对PA204私有并且不包括在全局地址映射202中。
节点104包括物理地址映射(PA)212。节点104是诸如计算系统100之类的计算系统的存储节点。PA 212对节点104的存储器的所有存储空间进行映射,包括主存储器214、IO设备储存器216和储存器218。PA 212被复制到全局地址映射202。在另一示例中,PA 212仅将节点104与其它节点共享的节点104的元素映射到全局地址映射202。节点本地主存储器和IO寄存器空间的大区段可以对PA 212私有并且不包括在全局地址映射202中。
全局地址映射202对计算设备的存储器的所有存储空间进行映射。全局地址映射202还可以包括未被映射在PA中的存储空间。全局地址映射202存储在被包括在计算设备中的全局地址管理器上。在示例中,全局地址管理器是诸如节点102或104之类的节点,其除节点的计算和/或存储活动之外还被指定为全局地址管理器。在另一示例中,全局地址管理器是计算系统的专用节点。
全局地址映射202由计算设备中的所有节点访问。映射到全局地址映射202的存储空间可以被映射到计算系统的任何PA,而不管存储空间的物理位置。通过将存储空间映射到节点的物理地址,节点可以访问存储空间,而不管存储空间是否在物理上位于该节点上。例如,节点102将存储器214从全局地址映射202映射到PA 204。在存储器214被映射到PA204之后,节点102可以访问存储器214,尽管存储器214在物理上驻留在节点104上这一事实。通过使得节点能够访问计算系统中的所有存储器,创建存储器的共享池。存储器的共享池是潜在巨大的地址空间并且不受单独的处理器或节点的寻址能力约束。
通过包括在每一个节点中的映射机构来将存储空间从全局地址映射202映射到PA。在示例中,映射机构是MMS控制器。由计算节点中的CPU支持的PA的大小对在任何给定时间处可以将存储器的共享池的多少映射到计算节点的PA进行约束,但是这不约束共享存储器池的总大小或全局地址映射的大小。
在一些示例中,根据所需要的资源量,从全局地址映射202静态地映射存储空间,即在启动节点时供应(provision)存储器资源。可以部署通用计算节点,而不是部署具有较大量的存储器的一些节点和具有较小量的存储器的其它节点以及具有特定IO设备的一些节点和具有IO设备的不同混合的其它节点,及其组合。取代于必须在伴随的复杂性和低效性的情况下从这样的预供应系统的分类中选择,通过创建共享存储器池和全局地址映射并且对计算节点中的映射机构进行编程以将存储器和IO映射到该计算节点的PA,可以将具有适当量的存储器和IO设备的通用计算节点供应到新的服务器中。
在另一示例中,从全局地址映射202动态地映射存储空间,这意味着节点上的运行的操作环境请求对当前未被映射到节点的PA中的共享存储器中的资源的访问。在操作系统的运行期间可以将映射添加到节点的PA。该映射等同于在其运行操作环境的同时将附加的存储器芯片添加到传统的计算节点的板。节点不再需要的存储器资源被撤回并且简单地通过从节点的PA移除用于该存储器资源的映射而被释放以供其它节点使用。用于给定服务器实例的基于地址空间的资源(即主存储器、存储设备、存储器映射的IO设备)可以动态伸缩,在该服务器实例上按照工作负载的需要而增长和收缩。
在一些示例中,并非所有存储器空间从共享存储器被映射。而是,将固定量的存储器嵌入在节点内而同时通过向节点的PA添加映射来从共享存储器供应节点所需要的任何附加量的存储器。IO设备可以以相同的方式操作。
此外,通过创建共享存储器池,可以在不从原始计算节点向新的计算节点移动存储器的情况下完成虚拟机迁移。当前为了虚拟机迁移,在迁移之前将存储器中的数据推出到储存器并且在迁移之后将其拉回到目标物理计算节点上的存储器中。然而,该方法是低效的并且花费大量时间。另一方法是过供应(over-provision)连接计算节点的网络以允许存储器通过网络在合理的时间量中从一个节点复制到另一个。然而,网络带宽的这种过供应是昂贵且低效的并且对于大存储器实例而言可能证实是不可能的。
然而,通过创建共享存储器池并且将共享存储器池映射在全局地址映射中,从源计算节点的机器迁移的目标节点的PA被简单地编程有如在源节点PA中的相同映射,从而消除对于复制或移动在全局地址映射中映射的存储器中的任何数据的需要。存在于源计算节点自身中的那一点状态可以因而被迅速移动到目标节点,从而允许极其快速和高效的迁移。
在机器迁移或动态重映射的情况中,构造协议特征确保发生飞行中(in-flight)事务的适当处理。用于完成该处理的一种方法是实现与部署在对称多处理器或CC-NUMA系统中的类似的高速缓存一致性协议。可替换地,可以采用操作在页或卷级别并且要求软件参与的较粗糙粒度的解决方案。在该情况中,该构造提供在飞行中事务到达公共可见点之后返回确认的清除(flush)操作。该构造还支持编写-提交语义,因为应用有时需要确保所写入的数据已经到达某个目的地,使得存在数据存活的充足置信度,甚至在严重的失效场景的情况中。
图3是图示了对共享存储器地址空间进行映射的方法的过程流图。方法300在块302处开始。在块302处,创建节点中的存储器的物理地址映射。节点被包括在计算系统中并且是计算节点、存储节点或任何其它类型的节点。计算系统包括多个节点。在实例中,节点全部是一个类型的节点,诸如计算节点。在另一示例中,节点是类型的混合。物理地址映射对包括物理存储器和IO设备存储器的节点的存储器空间进行映射。物理地址映射被存储在节点存储器中。
在块304处,将物理地址映射中的一些或全部复制到全局地址映射。全局地址映射对计算设备的一些或全部存储器地址空间进行映射。全局地址映射可以对不被包括在物理地址映射中的存储器地址空间进行映射。全局地址映射可由计算设备中的所有节点访问。可以将地址空间从全局地址映射映射到节点的物理地址映射,从而向节点提供对地址空间的访问,而不管地址空间的物理位置,即不管地址空间是位于所述节点还是另一节点上。可以向全局地址映射的子范围分配附加保护属性,使得仅特定节点可以实际上利用全局映射的子范围。
在块306处,做出是否所有节点已被映射的确定。如果不是,方法300返回到块302。如果是,在块308处将全局地址映射存储在全局地址管理器上。在示例中,全局地址管理器是除节点的计算和/或存储活动之外还被指定为全局地址管理器的节点。在另一示例中,全局地址管理器是专用全局地址管理器。全局地址管理器可通信地耦合到计算系统的其它节点。在示例中,计算系统是数据中心。在块310处,与计算系统中的节点共享全局地址映射。在示例中,所述节点访问在全局地址管理器上存储的全局地址映射。在另一示例中,全局地址映射的副本被存储在计算系统的每一个节点中并且每当全局地址映射被更新时更新每个副本。
图4是图示了访问所存储的数据对象的方法的过程流图。在块402处,计算系统的节点请求对所存储的数据对象的访问。在示例中,该节点是计算节点,诸如计算节点102和104。诸如计算系统100之类的计算系统可以包括多个节点并且多个节点可以共享存储器以创建共享存储器池。在示例中,每一个节点是包括物理存储器的计算节点。物理存储器包括物理存储器地址映射。物理存储器地址映射对物理存储器内的所有存储空间进行映射并且列出每一个存储空间的内容。
在块404处,节点确定数据对象的地址空间是否被映射在物理存储器地址映射中。如果地址空间被映射在物理存储器地址映射中,则在块406处节点从物理存储器地址映射检索数据对象地址空间。在块408处,节点访问所存储的数据对象。
如果数据对象的地址空间未被映射在物理存储器地址映射中,则在块410处节点访问全局地址映射。全局地址映射对计算系统中的所有共享存储器进行映射并且被全局地址管理器存储。全局地址管理器可以是被指定为除节点的计算和/或存储活动之外还充当全局地址管理器的计算设备的节点。在示例中,全局地址管理器是仅专用于充当全局地址管理器的节点。在块412处,将数据对象地址空间从全局地址映射映射到物理存储器地址映射。在示例中,存储在节点中的映射机构执行映射。数据对象地址空间可以静态或动态地从全局地址映射被映射到物理地址映射。在块414处,从物理存储器地址映射检索数据对象地址空间。在块416处,由节点访问所存储的数据对象。
尽管本技术可以易受各种修改和替换形式,但是仅仅通过示例的方式示出以上讨论的示例性实施例。要理解的是,该技术不意图限于本文所公开的特定示例。事实上,本技术包括落在随附权利要求的真实精神和范围内的所有替换、修改和等同物。
Claims (14)
1.一种用于对计算系统的共享存储器进行映射的方法,包括:
创建针对所述计算系统中的每一个节点的物理地址映射,每一个物理地址映射对节点的存储器进行映射;
将每一个物理地址映射的全部或部分复制到单个地址映射以形成对所述计算系统的共享存储器进行映射的全局地址映射;
以及与计算系统中的节点共享全局地址映射,
其中所述全局地址映射对未包括在物理地址映射中的存储器进行映射。
2.如权利要求1所述的方法,还包括将地址空间从全局地址映射复制到节点的物理地址映射。
3.如权利要求2所述的方法,还包括所述节点访问地址空间而不管地址空间的物理位置。
4.如权利要求1所述的方法,其中所述节点是计算节点、存储节点或计算节点和存储节点的混合。
5.如权利要求1所述的方法,其中所述全局地址映射被存储在计算设备的节点中,所述节点被指定为充当全局地址管理器。
6.一种计算系统,包括:
可通信地耦合到彼此的至少两个节点,每一个节点包括:
映射机构;以及
被物理地址映射所映射的存储器,每一个节点的存储器中的一些在节点之间被共享以形成存储器池;以及
对存储器池进行映射的全局地址映射,其中所述全局地址映射对未包括在物理地址映射中的存储器进行映射,
其中映射机构将全局地址映射的地址空间映射到物理存储器映射。
7.如权利要求6所述的系统,其中存储器池包括物理存储器、IO存储设备或物理存储器和IO存储设备的组合中的一个。
8.如权利要求6所述的系统,其中所述节点包括计算节点、存储节点或计算节点和存储节点中的一个。
9.一种存储器映射系统,包括:
全局地址映射,其通过将针对计算系统中的每一个节点的物理地址映射的全部或部分复制到单个地址映射来对在计算系统节点之间共享的存储器池进行映射,其中每一个物理地址映射对节点的存储器进行映射,其中所述全局地址映射对未包括在物理地址映射中的存储器进行映射;以及
映射机构,其用于将共享地址空间从全局地址映射映射到节点的物理地址映射。
10.如权利要求9所述的存储器映射系统,其中所述物理存储器地址映射对节点存储器的存储空间进行映射,所述存储器包括物理存储器、IO存储设备或物理存储器和IO存储设备的组合中的一个。
11.如权利要求9所述的存储器映射系统,其中所述全局地址映射由全局地址管理器存储,所述全局地址管理器包括计算系统节点。
12.如权利要求9所述的存储器映射系统,其中共享存储器池在计算节点、存储节点或计算节点和存储节点的组合中的一个之间共享。
13.如权利要求9所述的存储器映射系统,其中所述存储器映射系统准许节点访问存储器存储空间,而不管存储器存储空间的物理位置。
14.如权利要求9所述的存储器映射系统,其中主控共享地址空间的节点控制由另一节点对共享地址空间的访问,主控共享地址空间的节点授权或拒绝对共享地址空间的访问。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/US2013/024223 WO2014120226A1 (en) | 2013-01-31 | 2013-01-31 | Mapping mechanism for large shared address spaces |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104937567A CN104937567A (zh) | 2015-09-23 |
CN104937567B true CN104937567B (zh) | 2019-05-03 |
Family
ID=51262790
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201380072012.9A Active CN104937567B (zh) | 2013-01-31 | 2013-01-31 | 用于大共享地址空间的映射机构 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20150370721A1 (zh) |
CN (1) | CN104937567B (zh) |
TW (1) | TWI646423B (zh) |
WO (1) | WO2014120226A1 (zh) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9116809B2 (en) * | 2012-03-29 | 2015-08-25 | Ati Technologies Ulc | Memory heaps in a memory model for a unified computing system |
CN104166628B (zh) * | 2013-05-17 | 2018-05-18 | 华为技术有限公司 | 管理内存的方法、装置和系统 |
CN107533518B (zh) * | 2015-01-20 | 2020-09-18 | 乌尔特拉塔有限责任公司 | 用于容错对象存储器结构的分布式索引 |
WO2016118624A1 (en) | 2015-01-20 | 2016-07-28 | Ultrata Llc | Object memory instruction set |
US9971542B2 (en) | 2015-06-09 | 2018-05-15 | Ultrata, Llc | Infinite memory fabric streams and APIs |
US10698628B2 (en) | 2015-06-09 | 2020-06-30 | Ultrata, Llc | Infinite memory fabric hardware implementation with memory |
US9886210B2 (en) | 2015-06-09 | 2018-02-06 | Ultrata, Llc | Infinite memory fabric hardware implementation with router |
US10241676B2 (en) | 2015-12-08 | 2019-03-26 | Ultrata, Llc | Memory fabric software implementation |
US10235063B2 (en) | 2015-12-08 | 2019-03-19 | Ultrata, Llc | Memory fabric operations and coherency using fault tolerant objects |
CN108885604B (zh) | 2015-12-08 | 2022-04-12 | 乌尔特拉塔有限责任公司 | 存储器结构软件实现方案 |
CA3006776A1 (en) | 2015-12-08 | 2017-06-15 | Ultrata, Llc. | Memory fabric operations and coherency using fault tolerant objects |
CN116414788A (zh) * | 2021-12-31 | 2023-07-11 | 华为技术有限公司 | 一种数据库系统更新方法及相关装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101540787A (zh) * | 2009-04-13 | 2009-09-23 | 浙江大学 | 片上分布式操作系统通讯模块的实现方法 |
CN101751371A (zh) * | 2008-12-10 | 2010-06-23 | 辉达公司 | 在不同种类处理单元中对非统一存储器访问的芯片组支持 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4574350A (en) * | 1982-05-19 | 1986-03-04 | At&T Bell Laboratories | Shared resource locking apparatus |
US5805839A (en) * | 1996-07-02 | 1998-09-08 | Advanced Micro Devices, Inc. | Efficient technique for implementing broadcasts on a system of hierarchical buses |
EP1130516A1 (en) * | 2000-03-01 | 2001-09-05 | Hewlett-Packard Company, A Delaware Corporation | Address mapping in solid state storage device |
US6952722B1 (en) * | 2002-01-22 | 2005-10-04 | Cisco Technology, Inc. | Method and system using peer mapping system call to map changes in shared memory to all users of the shared memory |
US7360056B2 (en) * | 2003-04-04 | 2008-04-15 | Sun Microsystems, Inc. | Multi-node system in which global address generated by processing subsystem includes global to local translation information |
US20050015430A1 (en) * | 2003-06-25 | 2005-01-20 | Rothman Michael A. | OS agnostic resource sharing across multiple computing platforms |
US7321958B2 (en) * | 2003-10-30 | 2008-01-22 | International Business Machines Corporation | System and method for sharing memory by heterogeneous processors |
US20080232369A1 (en) * | 2007-03-23 | 2008-09-25 | Telefonaktiebolaget Lm Ericsson (Publ) | Mapping mechanism for access network segregation |
US7921261B2 (en) * | 2007-12-18 | 2011-04-05 | International Business Machines Corporation | Reserving a global address space |
US7873879B2 (en) * | 2008-02-01 | 2011-01-18 | International Business Machines Corporation | Mechanism to perform debugging of global shared memory (GSM) operations |
US8140780B2 (en) * | 2008-12-31 | 2012-03-20 | Micron Technology, Inc. | Systems, methods, and devices for configuring a device |
-
2013
- 2013-01-31 US US14/764,922 patent/US20150370721A1/en not_active Abandoned
- 2013-01-31 WO PCT/US2013/024223 patent/WO2014120226A1/en active Application Filing
- 2013-01-31 CN CN201380072012.9A patent/CN104937567B/zh active Active
- 2013-11-05 TW TW102140129A patent/TWI646423B/zh active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101751371A (zh) * | 2008-12-10 | 2010-06-23 | 辉达公司 | 在不同种类处理单元中对非统一存储器访问的芯片组支持 |
CN101540787A (zh) * | 2009-04-13 | 2009-09-23 | 浙江大学 | 片上分布式操作系统通讯模块的实现方法 |
Also Published As
Publication number | Publication date |
---|---|
CN104937567A (zh) | 2015-09-23 |
TWI646423B (zh) | 2019-01-01 |
US20150370721A1 (en) | 2015-12-24 |
TW201432454A (zh) | 2014-08-16 |
WO2014120226A1 (en) | 2014-08-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104937567B (zh) | 用于大共享地址空间的映射机构 | |
US10437486B2 (en) | Method and apparatus for tenant-aware storage sharing platform | |
EP3140749B1 (en) | In-memory lightweight coherency | |
Islam et al. | Triple-H: A hybrid approach to accelerate HDFS on HPC clusters with heterogeneous storage architecture | |
Wang et al. | NVMalloc: Exposing an aggregate SSD store as a memory partition in extreme-scale machines | |
US10248322B2 (en) | Memory system | |
US20220174130A1 (en) | Network attached memory using selective resource migration | |
CN100421089C (zh) | 处理器资源虚拟化的系统和方法 | |
US10831521B2 (en) | Efficient metadata management | |
US20170031825A1 (en) | Direct Host-To-Host Transfer for Local Caches in Virtualized Systems | |
JP2014175009A (ja) | 仮想マシンをサポートするフラッシュ・ベースのキャッシング・ソリューションでの動的キャッシュ共有のためのシステム、方法、およびコンピュータ可読媒体 | |
EP3443471B1 (en) | Systems and methods for managing databases | |
US10146696B1 (en) | Data storage system with cluster virtual memory on non-cache-coherent cluster interconnect | |
DE112020004181T5 (de) | Bereitstellen eines direkten datenzugriffs zwischen beschleunigern und speicher in einer datenverarbeitungsumgebung | |
CN103744799A (zh) | 一种内存数据访问方法、装置和系统 | |
Li et al. | Improved MPI collectives for MPI processes in shared address spaces | |
US8892833B2 (en) | Systems, methods, and computer program products providing snapshot data replication in a distributed analytic computing system | |
Pinto et al. | Hoard: A distributed data caching system to accelerate deep learning training on the cloud | |
US11609716B2 (en) | Implementing coherency and page cache support for a storage system spread across multiple data centers | |
Shaafiee et al. | Overcoming the limitations of von Neumann architecture in big data systems | |
Montaner et al. | Memscale™: A scalable environment for databases | |
CN110447019B (zh) | 存储器分配管理器及由其执行的用于管理存储器分配的方法 | |
US11327895B1 (en) | Protocol for processing requests that assigns each request received by a node a sequence identifier, stores data written by the request in a cache page block, stores a descriptor for the request in a cache page descriptor, and returns a completion acknowledgement of the request | |
Saifeng | VFS_CS: a light-weight and extensible virtual file system middleware for cloud storage system | |
Montaner et al. | A practical way to extend shared memory support beyond a motherboard at low cost |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C41 | Transfer of patent application or patent right or utility model | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20170105 Address after: American Texas Applicant after: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP Address before: American Texas Applicant before: Hewlett-Packard Development Company, L.P. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |