CN109964214A - 使用服务层适配器管理最低一致性点(lpc)存储器 - Google Patents

使用服务层适配器管理最低一致性点(lpc)存储器 Download PDF

Info

Publication number
CN109964214A
CN109964214A CN201780071417.9A CN201780071417A CN109964214A CN 109964214 A CN109964214 A CN 109964214A CN 201780071417 A CN201780071417 A CN 201780071417A CN 109964214 A CN109964214 A CN 109964214A
Authority
CN
China
Prior art keywords
memory
adapter
lpc
accelerator
instruction
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.)
Granted
Application number
CN201780071417.9A
Other languages
English (en)
Other versions
CN109964214B (zh
Inventor
L.B.阿里米利
W.斯塔克
J.斯图切利
Y.本雅米尼
B.布拉纳
E.阿达
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of CN109964214A publication Critical patent/CN109964214A/zh
Application granted granted Critical
Publication of CN109964214B publication Critical patent/CN109964214B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/10Address translation
    • G06F12/1081Address translation for peripheral access to main memory, e.g. direct memory access [DMA]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0806Multiuser, multiprocessor or multiprocessing cache systems
    • G06F12/0815Cache consistency protocols
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1416Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights
    • G06F12/145Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights the protection being virtual, e.g. for virtual blocks or segments before a translation mechanism
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1016Performance improvement
    • G06F2212/1024Latency reduction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1052Security improvement
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/62Details of cache specific to multiprocessor cache arrangements
    • G06F2212/621Coherency control relating to peripheral accessing, e.g. from DMA or I/O device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/65Details of virtual memory and virtual address translation
    • G06F2212/656Address 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)
  • Memory System (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Computer Security & Cryptography (AREA)

Abstract

使用服务层适配器管理最低一致性点(LPC)存储器,适配器耦合到处理器和主机计算系统上的加速器,处理器被配置用于对称多处理,包括由适配器从加速器接收存储器访问指令;由适配器检索存储器访问指令的实际地址;使用适配器上的基地址寄存器确定实际地址定位LPC存储器,其中基地址寄存器在LPC存储器与主机计算系统上的其他存储器位置之间引导存储器访问请求;以及由适配器将所述存储器访问指令和所述实际地址发送给LPC存储器的媒体控制器,其中LPC存储器的媒体控制器经由存储器接口连接到所述适配器。

Description

使用服务层适配器管理最低一致性点(LPC)存储器
技术领域
本发明的领域是数据处理,或者更具体地,用于使用服务层适配器管理最低一致性点(lowest point of coherency)(LPC)存储器的方法,装置和产品。
背景技术
1948年的EDVAC计算机系统的发展经常被引用作为计算机时代的开始。从那时起,计算机系统已演变成极其复杂的装置。今天的计算机比早期系统(如EDVAC)复杂得多。计算机系统通常包括硬件和软件组件,应用程序,操作系统,处理器,总线,存储器,输入/输出装置等的组合。随着半导体处理和计算机体系结构的进步推动计算机的性能越来越高,更复杂的计算机软件已经发展到利用硬件的更高性能,导致今天的计算机系统比仅仅几年前更强大。
发明内容
在本说明书中公开了使用服务层适配器管理最低一致性点(LPC)存储器的方法、系统和装置。使用服务层适配器管理最低一致性点(LPC)存储器,所述适配器耦合到处理器和主机计算系统上的加速器,所述处理器被配置用于对称多处理,包括由适配器从加速器接收存储器访问指令;由适配器检索用于存储器访问指令的实际地址;使用适配器上的基地址寄存器确定实际地址定位LPC存储器,其中基地址寄存器在LPC存储器与主机计算系统上的其他存储器位置之间引导存储器访问请求;以及由适配器将存储器访问指令和实际地址发送到用于LPC存储器的媒体控制器,其中用于LPC存储器的媒体控制器经由存储器接口连接到适配器。
本发明的前述和其他目的、特征和优点将从如附图所示的本发明的示例性实施例的以下更具体的描述中变得显而易见,其中相同的附图标记通常表示本发明的示例性实施例的相同部分。
附图说明
现在将参考附图仅通过示例的方式描述本发明的实施例,附图中:图1示出了根据本发明实施例的配置用于使用服务层适配器管理最低一致性点(LPC)存储器的示例系统的框图。
图2示出了根据本发明实施例的使用服务层适配器管理LPC存储器的框图。
图3示出了说明根据本发明实施例的使用服务层适配器管理LPC存储器的示例性方法的流程图。
图4示出了说明根据本发明实施例的使用服务层适配器管理LPC存储器的示例性方法的流程图。
图5示出了说明根据本发明实施例的使用服务层适配器管理LPC存储器的示例性方法的流程图。
图6示出了说明根据本发明实施例的使用服务层适配器管理LPC存储器的示例性方法的流程图。
具体实施方式
参考附图,从图1开始,描述了使用根据本发明的服务层适配器管理最低一致性点(LPC)存储器的示例性方法,装置和产品。图1示出了自动计算机器的框图包括示例性计算系统(152),其被配置为使用根据本发明实施例的服务层适配器来管理最低一致性点(LPC)存储器。图1的计算系统(152)包括至少一个计算机处理器(156)或'CPU'以及随机存取存储器(168)('RAM'),其通过高速存储器总线(166)和总线适配器(158)连接到处理器(156)和计算系统(152)的其他组件。
存储在RAM(168)中的是操作系统(154)。在根据本发明实施例的配置用于使用服务层适配器管理最低一致性点(LPC)存储器的计算机中有用的操作系统包括UNIXTM,LinuxTM,Microsoft XPTM,AIXTM,IBM的iOSTM以及本领域技术人员将想到的其他操作系统。图1的示例中的操作系统(154)在RAM(168)中示出,但是这种软件的许多组件通常也存储在非易失性存储器中,例如存储在磁盘驱动器(170)上。
图1的计算系统(152)包括通过扩展总线(160)和总线适配器(158)耦合到处理器(156)和计算系统(152)的其他组件的磁盘驱动器适配器(172)。磁盘驱动器适配器(172)以磁盘驱动器(170)的形式将非易失性数据存储器连接到计算系统(152)。在配置用于使用根据本发明实施例的服务层适配器管理最低一致性点(LPC)存储器的计算机中有用的磁盘驱动器适配器包括集成驱动电子装置('IDE')适配器,小型计算机系统接口('SCSI')适配器,以及本领域技术人员将想到的其他人。非易失性计算机存储器也可以实现为光盘驱动器,电可擦除可编程只读存储器(所谓的“EEPROM”或“闪存”存储器),RAM驱动器等,本领域技术人员会想到这一点。
图1的示例计算系统(152)包括一个或多个输入/输出('I/O')适配器(178)。I/O适配器通过例如软件驱动器和计算机硬件实现面向用户的输入/输出,用于控制到诸如计算机显示屏的显示装置的输出,以及来自诸如键盘和鼠标的用户输入装置(181)的用户输入。图1的示例计算系统(152)包括视频适配器(209),其是专门设计用于向显示装置(180)(例如显示屏或计算机监视器)的图形输出的I/O适配器的示例。视频适配器(209)通过高速视频总线(164),总线适配器(158)和前端总线(162)连接到处理器(156),前端总线(162)也是高速总线。
图1的示例性计算系统(152)包括通信适配器(167),用于与其他计算机(182)进行数据通信并用于与数据通信网络的数据通信。这种数据通信可以通过RS-232连接,通过诸如通用串行总线('USB')之类的外部总线,通过诸如IP数据通信网络之类的数据通信网络,以及以本领域技术人员将想到的其他方式串行地执行。通信适配器实现数据通信的硬件级别,一台计算机通过该级别直接或通过数据通信网络将数据通信发送到另一台计算机。在根据本发明实施例的使用服务层适配器配置用于管理最低一致性点(LPC)存储器的计算机中有用的通信适配器的示例包括用于有线拨号通信的调制解调器,用于有线数据通信的以太网(IEEE 802.3)适配器,和用于无线数据通信的802.11适配器。
图1的示例性计算系统(152)包括通信总线(190),其将处理器和RAM(168)(经由总线适配器(158))连接到服务层适配器(192)和加速器功能单元(194)。
图2是配置用于使用服务层适配器管理最低一致性点(LPC)存储器的系统的示例框图。图2包括加速器功能单元(194),存储器(216),媒体控制器(214),服务层适配器(192),通信总线(190)和处理器(156)。服务层适配器(192)包括翻译服务层(202),一致性服务层(204),存储器层(206)和链路仲裁器(210)。存储层(206)包括XTAG表(208)和基地址寄存器(212)。
加速器功能单元(AFU)(194)是被配置为扩展计算系统的功能的加速器。AFU(194)可以是安装以执行特定任务或任务组的计算系统的可移除组件。示例AFU(194)包括例如网络接口卡,图形加速器卡和存储适配器卡。
通信总线(190)是通过其在计算系统上的硬件组件之间移动数据的介质。通信总线(190)可以包括管理在通信总线(190)上传输的数据的总线控制器。示例通信总线(190)包括外围组件互连快速(PCIe)总线。
AFU(194)可以被配置为经由通信总线向计算系统上的其他硬件元件发送基于一致性的操作和存储器访问指令。处理器(156)可以包括一致性加速器处理器代理,其向AFU(194)提供对处理器(156)上的一致性对称多处理总线的访问。代理可以由一致性加速器代理接口使用,其允许AFU(194)参与对称多处理一致性协议。
服务层适配器(192)适应AFU(194)和一致性加速器代理接口之间的通信。服务层适配器(192)和代理之间的通信通过通信总线封装到处理器的分组中。服务层适配器(192)可以在外部芯片上实现,例如现场可编程门阵列或专用集成电路。
服务层适配器(192)可以被配置为服务由AFU(194)发起的基于一致性的操作。服务层适配器(192)包括翻译服务层(202),一致性服务层(204)和存储器层(206)。翻译服务层(202)可以包括用于检索操作的上下文并使用有效到实际地址转换(ERAT)将有效地址转换为实际地址的元素和逻辑。有效地址是由计算系统中的元素和进程使用以指代存储器位置的地址。但是,必须将有效地址翻译为实际地址以便访问所请求的数据。有效地址可以称为虚拟地址,而实际地址可以称为物理地址。翻译服务层(202)还可以包括用于存储频繁访问的上下文的上下文高速缓存和用于存储频繁访问的实际地址翻译的ERAT高速缓存。
一致性服务层(204)可以包括用于执行基于一致性的操作的元件和逻辑。一致性服务层(204)从AFU(194)接收基于上下文的通信(通过一致性接口),并与服务层适配器(192)中的其他层通信以服务该操作。一致性服务层(204)还可以包括数据高速缓存,以存储经常被基于一致性的操作定位(target)的数据。一致性服务层(204)还处理与维持AFU(194)与计算系统上的其他存储器位置之间的数据一致性相关的其他任务。
服务层适配器(192)还经由存储器层(206)向媒体控制器(214)和存储器(216)提供存储器接口。存储器层(206)提供对存储器(216)和媒体控制器(214)的访问,并管理对作为最低一致性点(LPC)存储器的存储器(216)的访问。将存储器(216)管理为LPC存储器可以包括为存储器提供存储器管理单元类型服务,例如窥探以维持存储器(216)的一致性以及在LPC存储器(216)和位于系统的其他地方的存储器之间引导(direct)存储器访问请求。
存储器层(206)可以向AFU(194)提供对存储器(216)的访问。访问附加到服务层适配器(192)的存储器(216)可以具有比访问系统上其他地方的存储器更低的等待时间。此外,存储器(216)可以部分或全部地分配给系统上需要或受益于更大量存储器的其他元件。例如,处理器(156)可以用于需要大量存储器的活动。可以通过服务层适配器(192)上的存储器接口以较低的成本或作为系统升级的一部分来提供存储器。
此外,存储器(216)可以在AFU(194)和系统上的其他元件(例如处理器(158))之间分区。这样做为AFU(194)提供了对存储器的低延迟访问,同时增强了处理器(158)或需要额外存储器的其他元件的存储器储备。存储器可以是与RAM不同的易失性存储器,并且不同于由处理器和存储器管理单元管理的其他存储器。
存储器层(206)还包括基地址寄存器(212)。基地址寄存器(212)提供基地址,从该基地址开始存储器映射。基地址寄存器(212)可以在功能上将存储器访问指令内的存储器地址引导到系统上的不同存储器位置,包括存储器(216),处理器(156)上的存储器,以及耦合到主机系统上的其他服务层适配器的存储器。
存储器层(206)经由存储器接口与媒体控制器(214)通信。媒体控制器(214)是被配置为促进服务层适配器(192)的存储器层(206)与存储器(216)之间的通信的装置。媒体控制器(214)对于与其连接的存储器(216)装置的类型可以是唯一的。
媒体控制器(214)可以通过存储器接口与存储器层(206)通信。存储器层(206)上的存储器接口可以是与一致性服务层(204)上的一致性接口不同的通信接口。例如,一致性接口和存储器接口可以是芯片上的单独引脚,其上实现服务层适配器(192)。此外,服务层适配器(192)可以包括暴露于AFU(194)的多个端口。AFU(194)可以使用暴露的端口来根据AFU(194)要求分发存储器访问指令。
存储器层(206)使用翻译标签(XTAGs)提供翻译服务。XTAGs被提供给AFU(194)并存储在映射到实际地址的XTAG表(208)中。XTAG表(208)将XTAG映射到处理器(156)和存储器层(206)使用的内部地址,例如实际地址。AFU(194)使用XTAG来识别存储器访问指令内的存储器位置。AFU(194)可能无法访问或知道处理器(156)或计算系统上的其他装置所使用的实际地址。尽管XTAG表(208)显示在存储器层(206)内,但XTAG表(208)可以驻留在服务层适配器(192)上的任何地方,或者可由服务层适配器(192)访问。
AFU(194)可以从存储器(216)或系统上的其他地方分配存储器,例如处理器(158)上的存储器或由存储器管理单元管理的其他存储器。AFU(194)可能不知道经由服务层适配器(192)可访问的存储器的物理位置。换句话说,AFU(194)将使用相同的指令集经由服务层适配器(192)访问所有分配的存储器,而不管存储器的位置。然而,附加到服务层适配器(192)的存储器可以提供比系统上其他地方的存储器更低的等待时间访问。
链路仲裁器(210)提供翻译层以促进服务层适配器(192)与计算系统上的其他硬件元件(例如处理器)之间的通信。链路仲裁器(210)还可以提供接口,以在高速缓存未命中的情况下更新服务层适配器(192)上的不同高速缓存(例如,上下文高速缓存,ERAT高速缓存)。
为了进一步说明,图3示出了说明根据本发明实施例的使用服务层适配器管理最低一致性(LPC)存储器的示例性方法的流程图。图3的方法包括由适配器(192)从加速器(194)接收(302)存储器访问指令(320)。由适配器(192)从加速器(194)接收(302)存储器访问指令(320)可以通过如下执行:由适配器(192)从加速器(194)接收启动存储器访问操作的包括有效地址的请求;将有效地址翻译为实际地址;由适配器(192)向加速器(194)提供与实际地址相对应的翻译标签('XTAG');并且,由适配器(192)从加速器(194)接收包括XTAG的存储器访问指令。
适配器可以由适配器上的一致性接口接收存储器访问指令。或者,存储器访问指令可以由耦合加速器(194)和适配器(192)的另接口接收。例如,适配器(192)可以为存储器访问指令提供专用接口,例如直接存储器访问接口。
图3的方法还包括由适配器(192)检索(304)存储器访问指令的实际地址。由适配器(192)检索(304),可以通过从XTAG表获得映射到XTAG的实际地址并且由适配器用实际地址替换存储器访问指令中的XTAG来执行存储器访问指令的实际地址。可以在算法上从存储器访问指令导出实际地址。例如,适配器(192)可以将算法应用于存储器访问指令的元素,例如XTAG,以获得实际地址。
由适配器(192)检索(304),还可以通过确定适配器(194)被授权访问存储器中的定位位置来执行存储器访问指令的实际地址。例如,ERAT或其他结构可以指示加速器(194)或相关联的上下文是否具有访问由有效地址或相关联的实际地址标识的存储器的许可。
图3的方法还包括使用适配器(192)上的基地址寄存器确定(306)实际地址定位(target)LPC存储器,其中基地址寄存器在LPC存储器与主机计算系统上的其他存储器位置之间引导存储器访问请求。使用适配器(192)上的基地址寄存器确定(306)实际地址定位LPC存储器,其中基地址寄存器在LPC存储器与主机计算系统上的其他存储器位置之间引导存储器访问请求可以通过如下执行:确定实际地址的基地址并使用组合的基地址和实际地址来确定实际地址的存储器所在的系统上的位置。该位置可以是连接到媒体控制器(214)的存储器,处理器上的存储器,由存储器管理单元(例如系统RAM)控制的存储器,或连接到系统上的另一个服务层适配器的存储器。
图3的方法还包括由适配器(192)将存储器访问指令和实际地址(326)发送(308)到用于LPC存储器的媒体控制器(214),其中用于LPC存储器的媒体控制器(214)通过存储器接口连接到适配器(192)。适配器(192)将存储器访问指令和实际地址(326)发送(308)到LPC存储器的媒体控制器(214),其中LPC存储器的媒体控制器(214)经由存储器接口连接到适配器(192)可以通过如下执行:将存储器访问指令和实际地址(326)放置在连接到媒体控制器(214)的存储器接口上。适配器(192)将存储器访问指令和实际地址(326)发送(308)到LPC存储器的媒体控制器(214),其中LPC存储器的媒体控制器(214)经由存储器接口连接到适配器(192)也可以通过如下执行:媒体控制器(214)将存储器访问指令翻译成适合于由附加存储器服务存储器访问指令的较低级指令。
为了进一步说明,图4示出了说明根据本发明实施例的使用服务层适配器管理最低一致性点(LPC)存储器的示例性方法的流程图,该方法包括由适配器(192)从加速器(194)接收(302)存储器访问指令(320);由适配器(192)检索(304)存储器访问指令的实际地址;,使用适配器(192)上的基地址寄存器,确定(306)实际地址定位LPC存储器,其中基地址寄存器在LPC存储器与主机计算系统上的其他存储器位置之间引导存储器访问请求;并且由适配器(192)将存储器访问指令和实际地址(326)发送(308)到用于LPC存储器的媒体控制器(214),其中用于LPC存储器的媒体控制器(214)经由存储器接口被连接到适配器(192)。
然而,图4的方法与图3的方法的不同之处在于,图4还包括从处理器接收(402)后续存储器访问指令。从处理器接收(402)后续存储器访问指令可以由处理器上的核心或其他元件执行,生成后续存储器访问指令,其带有定位连接到服务层适配器(192)的存储器上的存储器位置的实际地址。存储器访问指令可以经由处理器上的基地址寄存器指向服务层适配器(192)。
图4的方法还包括使用适配器上的基地址寄存器确定(404)后续存储器访问指令定位LPC存储器。使用适配器上的基地址寄存器确定(404)后续存储器访问指令定位LPC存储器可以通过如下来执行:确定实际地址的基地址并使用组合的基地址和实际地址来确定后续存储器访问请求定位连接到适配器(192)的存储器上的位置。
图4的方法还包括由适配器(192)将后续存储器访问指令和后续存储器访问指令(328)的实际地址发送(406)到LPC存储器的媒体控制器(214)。由适配器(192)将后续存储器访问指令和后续存储器访问指令(328)的实际地址发送(406)到LPC存储器的媒体控制器(214)可以通过如下执行:将后续存储器访问指令和实际地址(328)放置在连接到媒体控制器(214)的存储器接口上。后续的存储器访问指令可以定位连接由加速器访问的适配器(192)的相同存储器的一部分,尽管处理器和加速器(194)可以被限制在允许它们访问的存储器上的位置。
为了进一步说明,图5示出了说明根据本发明实施例的使用服务层适配器管理最低一致性点(LPC)存储器的示例性方法的流程图,其包括由适配器(192)从加速器(194)接收(302)存储器访问指令(320);由适配器(192)检索(304)存储器访问指令的实际地址;使用适配器(192)上的基地址寄存器确定(306),实际地址定位LPC存储器,其中基地址寄存器在LPC存储器与主机计算系统上的其他存储器位置之间引导存储器访问请求;并且由适配器(192)将存储器访问指令和实际地址(326)发送(308)到用于LPC存储器的媒体控制器(214),其中用于LPC存储器的媒体控制器(214)经由存储器接口被连接到适配器(192)。
然而,图5的方法与图3的方法的不同之处在于,图5还包括从加速器(194)接收(502)后续存储器访问指令。从加速器(194)接收(502)后续存储器访问指令可以通过接收包括XTAG的后续存储器访问指令来执行。可以使用XTAG表将XTAG翻译为实际地址。
图5的方法还包括使用适配器(192)上的基地址寄存器确定(504)后续存储器访问指令不定位LPC存储器。使用适配器(192)上的基地址寄存器确定(504)后续存储器访问指令不定位LPC存储器可以通过以下来执行:确定用于实际地址的基地址并使用组合的基地址和实际地址以确定后续存储器访问请求定位的存储器位置不在连接到适配器(192)的存储器上。
图5的方法还包括由适配器(192)将后续存储器访问指令和用于后续存储器访问指令(328)的实际地址发送(506)到处理器(156)。由适配器(192)向处理器(156)发送(506)后续存储器访问指令和用于后续存储器访问指令(328)的实际地址可以通过如下执行:由处理器接收后续存储器访问指令(328)并确定所定位的存储器位置是否在处理器上或是在系统上的另一个适配器上(例如,使用基地址寄存器)。如果目标存储器是处理器存储器,则处理器为后续存储器访问请求服务。如果目标存储器附加到另一个适配器,则后续存储器访问请求可以被转发到管理该存储器的适配器。
为了进一步说明,图6示出了说明根据本发明实施例的使用服务层适配器管理最低一致性点(LPC)存储器的示例性方法的流程图,该方法包括由适配器(192)从加速器(194)接收(302)存储器访问指令(320);由适配器(192)检索(304)用于存储器访问指令的实际地址;使用适配器(192)上的基地址寄存器确定(306)实际地址定位LPC存储器,其中基地址寄存器在LPC存储器与主机计算系统上的其他存储器位置之间引导存储器访问请求;并且由适配器(192)将存储器访问指令和实际地址(326)发送(308)到用于LPC存储器的媒体控制器(214),其中用于LPC存储器的媒体控制器(214)经由存储器接口被连接到适配器(192)。
然而,图6的方法与图3的方法的不同之处在于,由适配器(192)从加速器(194)接收(302)存储器访问指令(320)包括由适配器(192)从加速器(194)接收(602)发起存储器访问操作的包括有效地址的请求;将有效地址翻译(604)为实际地址;由适配器(192)向加速器(194)提供(606)与实际地址相对应的翻译标签('XTAG')(330);以及,由适配器(192)从加速器(194)接收(608)包括XTAG的存储器访问指令(332)。
由适配器(192)从加速器(194)接收(602)发起存储器访问操作的包括有效地址的请求可以通过如下执行:加速器(194)向适配器(192)的一致性服务层上的一致性接口发送启动存储器访问操作的请求。发起存储器访问操作的请求可以包括位置标识符,进程句柄和操作标识符。位置标识符是加速器用于指代处理器,RAM或计算系统上的其他硬件元件上的存储器位置的地址。位置标识符可以是例如有效地址。进程句柄是请求的上下文的标识符。适配器(192)使用上下文将位置标识符翻译成定位装置理解的实际地址。操作标识符可以标识AFU(194)正在发起的操作的类型,诸如存储器访问指令。
可以通过使用适配器上的ERAT将有效地址翻译为实际地址来执行将有效地址翻译(604)为实际地址。由适配器(192)向加速器(194)提供(606)对应于实际地址的翻译标签('XTAG')(330)可以通过如下执行:由适配器(192)确定用于存储器访问指令的实际地址并将实际地址存储在适配器(192)上的XTAG表中。
由适配器(192)从加速器(194)接收(608)包括XTAG的存储器访问指令(332)可以通过如下执行:加速器(194)经由一致性接口或另一专用接口(例如直接存储器访问接口)向适配器(192)发送包括XTAG的存储器访问指令(332)。
鉴于以上阐述的解释,读者将认识到,使用根据本发明实施例的服务层适配器管理最低一致性点(LPC)存储器的益处包括:
·通过向AFUs提供独立于一致性接口的开放式处理器存储器接口来提高存储访问效率,从而改善计算机系统的操作。
·通过向AFU提供对连接到适配器的LPC存储器的受保护访问来减少延迟,从而改善计算机系统的操作。
·通过管理AFU对适配器本地存储器和适配器远程存储器的存储器访问来提高存储器的完整性,从而改善计算机系统的操作。
主要在用于使用服务层适配器管理最低一致性点(LPC)存储器的全功能计算机系统的上下文中描述了本发明的示例性实施例。然而,本领域的技术人员将认识到,本发明还可以体现在设置在计算机可读存储介质上的计算机程序产品中,以与任何合适的数据处理系统一起使用。这种计算机可读存储介质可以是用于机器可读信息的任何存储介质,包括磁介质,光学介质或其他合适的介质。这种介质的示例包括硬盘驱动器或磁盘中的磁盘,光盘驱动器的光盘,磁带,以及本领域技术人员将想到的其他介质。本领域技术人员将立即认识到,具有合适编程装置的任何计算机系统将能够执行如计算机程序产品中体现的本发明方法的步骤。本领域技术人员还将认识到,尽管本说明书中描述的一些示例性实施例面向在计算机硬件上安装和执行的软件,但是,实现为固件或硬件的替代实施例也在本发明的范围内。
本发明可以是系统、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本发明的各个方面的计算机可读程序指令。
计算机可读存储介质可以是可以保持和存储由指令执行装置使用的指令的有形装置。计算机可读存储介质例如可以是――但不限于――电存储装置、磁存储装置、光存储装置、电磁存储装置、半导体存储装置或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码装置、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理装置,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储装置。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理装置中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理装置中的计算机可读存储介质中。
用于执行本发明操作的计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如Smalltalk、C++等,以及常规过程式编程语言—诸如“C”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA),该电子电路可以执行计算机可读程序指令,从而实现本发明的各个方面。
这里参照根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本发明的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他装置以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它装置上,使得在计算机、其它可编程数据处理装置或其它装置上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它装置上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
附图中的流程图和框图显示了根据本发明的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
从前面的描述将理解,在不脱离本发明的真实精神的情况下,可以在本发明的各种实施例中进行修改和改变。本说明书中的描述仅用于说明的目的,而不应被解释为限制意义。本发明的范围仅受以下权利要求的语言限制。

Claims (20)

1.一种使用服务层适配器管理最低一致性点(LPC)存储器的方法,所述适配器耦合到处理器和主机计算系统上的加速器,所述处理器被配置用于对称多处理,所述方法包括:
由适配器从加速器接收存储器访问指令;
由适配器检索用于存储器访问指令的实际地址;
使用适配器上的基地址寄存器确定实际地址定位LPC存储器,其中基地址寄存器在LPC存储器与主机计算系统上的其他存储器位置之间引导存储器访问请求;以及
由适配器将存储器访问指令和实际地址发送到用于LPC存储器的媒体控制器,其中用于LPC存储器的媒体控制器经由存储器接口连接到适配器。
2.如权利要求1所述的方法,还包括:
从处理器接收后续存储器访问指令;
使用适配器上的基地址寄存器确定后续存储器访问指令定位LPC存储器;以及
由适配器将后续存储器访问指令和用于后续存储器访问指令的实际地址发送到用于LPC存储器的媒体控制器。
3.如权利要求1所述的方法,还包括:
从加速器接收后续存储器访问指令;
使用适配器上的基地址寄存器确定后续存储器访问指令不定位LPC存储器;以及
由适配器将后续存储器访问指令和用于后续存储器访问指令的实际地址发送到处理器。
4.如权利要求1所述的方法,其中从所述加速器接收定位LPC存储器的存储器访问指令包括:
由适配器从加速器接收发起存储器访问操作的包括有效地址的请求;
将有效地址翻译为实际地址;
由适配器向加速器提供与实际地址相对应的翻译标签('XTAG');以及
由适配器从加速器接收包括XTAG的存储器访问指令。
5.如权利要求1所述的方法,其中所述其他存储器位置包括处理器存储器和耦合到主机计算系统上的附加适配器的存储器。
6.如权利要求1所述的方法,其中所述LPC存储器被划分在所述加速器和所述处理器之间。
7.如权利要求1所述的方法,其中所述适配器经由适配器上的一致性接口接收存储器访问指令。
8.一种用于使用服务层适配器管理最低一致性点(LPC)存储器的适配器,所述适配器耦合到处理器和主机计算系统上的加速器,所述处理器被配置用于对称多处理,所述适配器被配置为执行步骤:
由适配器从加速器接收存储器访问指令;
由适配器检索用于存储器访问指令的实际地址;
使用适配器上的基地址寄存器确定实际地址定位LPC存储器,其中基地址寄存器在LPC存储器与主机计算系统上的其他存储器位置之间引导存储器访问请求;以及
由适配器将存储器访问指令和实际地址发送到用于LPC存储器的媒体控制器,其中用于LPC存储器的媒体控制器经由存储器接口连接到适配器。
9.如权利要求8所述的适配器,所述步骤还包括:
从处理器接收后续存储器访问指令;
使用适配器上的基地址寄存器确定后续存储器访问指令定位LPC存储器;以及
由适配器将后续存储器访问指令和用于后续存储器访问指令的实际地址发送到LPC存储器的媒体控制器。
10.如权利要求8所述的适配器,所述步骤还包括:
从加速器接收后续存储器访问指令;
使用适配器上的基地址寄存器确定后续存储器访问指令不定位LPC存储器;以及
由适配器将后续存储器访问指令和用于后续存储器访问指令的实际地址发送到处理器。
11.如权利要求8所述的适配器,其中从加速器接收定位LPC存储器的存储器访问指令包括:
由适配器从加速器接收发起存储器访问操作的包括有效地址的请求;
将有效地址转换为实际地址;
由适配器向加速器提供与实际地址相对应的翻译标签('XTAG');以及
由适配器从加速器接收包括XTAG的存储器访问指令。
12.如权利要求8所述的适配器,其中所述其他存储器位置包括处理器存储器和耦合到主机计算系统上的附加适配器的存储器。
13.如权利要求8所述的适配器,其中所述LPC存储器被划分在所述加速器和所述处理器之间。
14.如权利要求8所述的适配器,其中所述存储器访问指令由所述适配器经由适配器上的一致性接口接收。
15.一种用于使用服务层适配器管理最低一致性点(LPC)存储器的计算机程序产品,所述适配器耦合到处理器和主机计算系统上的加速器,所述处理器被配置用于对称多处理,所述计算机程序产品设置在计算机可读介质上,所述计算机程序产品包括计算机程序指令,当被执行时,计算机程序指令使得适配器执行以下步骤:
由适配器从加速器接收存储器访问指令;
由适配器检索用于存储器访问指令的实际地址;
使用适配器上的基地址寄存器确定实际地址定位LPC存储器,其中基地址寄存器在LPC存储器与主机计算系统上的其他存储器位置之间引导存储器访问请求;以及
由适配器将存储器访问指令和实际地址发送到用于LPC存储器的媒体控制器,其中用于LPC存储器的媒体控制器经由存储器接口连接到适配器。
16.如权利要求15所述的计算机程序产品,所述步骤还包括:
从处理器接收后续存储器访问指令;
使用适配器上的基地址寄存器确定后续存储器访问指令定位LPC存储器;以及
由适配器将后续存储器访问指令和用于后续存储器访问指令的实际地址发送到用于LPC存储器的媒体控制器。
17.如权利要求15所述的计算机程序产品,所述步骤还包括:
从加速器接收后续存储器访问指令;
使用适配器上的基地址寄存器确定后续存储器访问指令不定位LPC存储器;以及
由适配器将后续存储器访问指令和用于后续存储器访问指令的实际地址发送到处理器。
18.如权利要求15所述的计算机程序产品,其中从所述加速器接收定位LPC存储器的存储器访问指令包括:
由适配器从加速器接收发起存储器访问操作的包括有效地址的请求;
将有效地址翻译为实际地址;
由适配器向加速器提供与实际地址相对应的翻译标签('XTAG');以及
由适配器从加速器接收包括XTAG的存储器访问指令。
19.如权利要求15所述的计算机程序产品,其中所述其他存储器位置包括处理器存储器和耦合到主机计算系统上的附加适配器的存储器。
20.如权利要求15所述的计算机程序产品,其中所述LPC存储器被划分在所述加速器和所述处理器之间。
CN201780071417.9A 2016-11-30 2017-11-27 使用服务层适配器管理最低一致性点(lpc)存储器 Active CN109964214B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/364,458 US10394711B2 (en) 2016-11-30 2016-11-30 Managing lowest point of coherency (LPC) memory using a service layer adapter
US15/364,458 2016-11-30
PCT/IB2017/057408 WO2018100478A1 (en) 2016-11-30 2017-11-27 Managing lowest point of coherency (lpc) memory using service layer adapter

Publications (2)

Publication Number Publication Date
CN109964214A true CN109964214A (zh) 2019-07-02
CN109964214B CN109964214B (zh) 2022-07-29

Family

ID=62190141

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201780071417.9A Active CN109964214B (zh) 2016-11-30 2017-11-27 使用服务层适配器管理最低一致性点(lpc)存储器

Country Status (6)

Country Link
US (1) US10394711B2 (zh)
JP (1) JP6982618B2 (zh)
CN (1) CN109964214B (zh)
DE (1) DE112017005063T5 (zh)
GB (1) GB2572287B (zh)
WO (1) WO2018100478A1 (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10394711B2 (en) * 2016-11-30 2019-08-27 International Business Machines Corporation Managing lowest point of coherency (LPC) memory using a service layer adapter
US10846235B2 (en) 2018-04-28 2020-11-24 International Business Machines Corporation Integrated circuit and data processing system supporting attachment of a real address-agnostic accelerator
US11221957B2 (en) * 2018-08-31 2022-01-11 International Business Machines Corporation Promotion of ERAT cache entries
CN110058931B (zh) 2019-04-19 2022-03-22 上海兆芯集成电路有限公司 用以任务调度的处理系统及其加速方法
CN110032453B (zh) 2019-04-19 2022-05-03 上海兆芯集成电路有限公司 用以任务调度与分配的处理系统及其加速方法
CN110083387B (zh) 2019-04-19 2021-11-12 上海兆芯集成电路有限公司 使用轮询机制的处理系统及其访存方法
CN110046053B (zh) 2019-04-19 2021-11-12 上海兆芯集成电路有限公司 用以分配任务的处理系统及其访存方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1354854A (zh) * 1998-11-16 2002-06-19 因芬尼昂技术股份公司 通用资源访问控制器
CN1679009A (zh) * 2002-06-28 2005-10-05 英特尔公司 允许对内部配置寄存器的外部访问的方法及设备
US20060020719A1 (en) * 2004-07-12 2006-01-26 Stmicroelectronics Sa Procedure for programming a DMA controller in a system on a chip and associated system on a chip
CN1957331A (zh) * 2004-05-26 2007-05-02 英特尔公司 网络应用内的自动高速缓存生成
CN101615106A (zh) * 2008-06-23 2009-12-30 国际商业机器公司 用于虚拟化sas存储适配器的方法和系统
US20160217096A1 (en) * 2015-01-27 2016-07-28 International Business Machines Corporation Implementing modal selection of bimodal coherent accelerator

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0553920A (ja) * 1991-08-26 1993-03-05 Toshiba Corp 構造化アドレス生成装置
US5497494A (en) * 1993-07-23 1996-03-05 International Business Machines Corporation Method for saving and restoring the state of a CPU executing code in protected mode
US5933158A (en) * 1997-09-09 1999-08-03 Compaq Computer Corporation Use of a link bit to fetch entries of a graphic address remapping table
US5914730A (en) * 1997-09-09 1999-06-22 Compaq Computer Corp. System and method for invalidating and updating individual GART table entries for accelerated graphics port transaction requests
US5936640A (en) * 1997-09-30 1999-08-10 Compaq Computer Corporation Accelerated graphics port memory mapped status and control registers
US6405289B1 (en) 1999-11-09 2002-06-11 International Business Machines Corporation Multiprocessor system in which a cache serving as a highest point of coherency is indicated by a snoop response
US6986052B1 (en) * 2000-06-30 2006-01-10 Intel Corporation Method and apparatus for secure execution using a secure memory partition
US6750870B2 (en) * 2000-12-06 2004-06-15 Hewlett-Packard Development Company, L.P. Multi-mode graphics address remapping table for an accelerated graphics port device
EP1619589B1 (fr) * 2004-07-23 2007-12-26 Stmicroelectronics SA Procédé de programmation d'un contrôleur de DMA dans un système sur puce et système sur puce associé
US7340582B2 (en) * 2004-09-30 2008-03-04 Intel Corporation Fault processing for direct memory access address translation
US8843727B2 (en) * 2004-09-30 2014-09-23 Intel Corporation Performance enhancement of address translation using translation tables covering large address spaces
TWI270803B (en) 2004-10-08 2007-01-11 Via Tech Inc Adapter for memory simulator
US20060288130A1 (en) * 2005-06-21 2006-12-21 Rajesh Madukkarumukumana Address window support for direct memory access translation
US7853744B2 (en) * 2007-05-23 2010-12-14 Vmware, Inc. Handling interrupts when virtual machines have direct access to a hardware device
US7925857B2 (en) * 2008-01-24 2011-04-12 International Business Machines Corporation Method for increasing cache directory associativity classes via efficient tag bit reclaimation
US8381032B2 (en) * 2008-08-06 2013-02-19 O'shantel Software L.L.C. System-directed checkpointing implementation using a hypervisor layer
US8131935B2 (en) * 2009-04-07 2012-03-06 International Business Machines Corporation Virtual barrier synchronization cache
US8589600B2 (en) 2009-12-14 2013-11-19 Maxeler Technologies, Ltd. Method of transferring data with offsets
US9081657B2 (en) * 2011-10-13 2015-07-14 Conexant Systems, Inc. Apparatus and method for abstract memory addressing
US9176888B2 (en) 2012-10-04 2015-11-03 International Business Machines Corporation Application-managed translation cache
US9766916B2 (en) 2014-05-05 2017-09-19 International Business Machines Corporation Implementing coherent accelerator function isolation for virtualization
US9842075B1 (en) * 2014-09-12 2017-12-12 Amazon Technologies, Inc. Presenting multiple endpoints from an enhanced PCI express endpoint device
KR102320044B1 (ko) * 2014-10-02 2021-11-01 삼성전자주식회사 Pci 장치, 이를 포함하는 인터페이스 시스템, 및 컴퓨팅 시스템
US20160291887A1 (en) * 2015-03-30 2016-10-06 Kabushiki Kaisha Toshiba Solid-state drive with non-volatile random access memory
US10394711B2 (en) * 2016-11-30 2019-08-27 International Business Machines Corporation Managing lowest point of coherency (LPC) memory using a service layer adapter

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1354854A (zh) * 1998-11-16 2002-06-19 因芬尼昂技术股份公司 通用资源访问控制器
CN1679009A (zh) * 2002-06-28 2005-10-05 英特尔公司 允许对内部配置寄存器的外部访问的方法及设备
CN1957331A (zh) * 2004-05-26 2007-05-02 英特尔公司 网络应用内的自动高速缓存生成
US20060020719A1 (en) * 2004-07-12 2006-01-26 Stmicroelectronics Sa Procedure for programming a DMA controller in a system on a chip and associated system on a chip
CN101615106A (zh) * 2008-06-23 2009-12-30 国际商业机器公司 用于虚拟化sas存储适配器的方法和系统
US20160217096A1 (en) * 2015-01-27 2016-07-28 International Business Machines Corporation Implementing modal selection of bimodal coherent accelerator

Also Published As

Publication number Publication date
JP2019537153A (ja) 2019-12-19
CN109964214B (zh) 2022-07-29
DE112017005063T5 (de) 2019-07-04
GB201909219D0 (en) 2019-08-14
GB2572287A8 (en) 2019-10-09
US10394711B2 (en) 2019-08-27
WO2018100478A1 (en) 2018-06-07
GB2572287B (en) 2020-03-04
GB2572287A (en) 2019-09-25
US20180150396A1 (en) 2018-05-31
JP6982618B2 (ja) 2021-12-17

Similar Documents

Publication Publication Date Title
CN109964214A (zh) 使用服务层适配器管理最低一致性点(lpc)存储器
CN105975413B (zh) 用于迁移虚拟机的rdma存储器映射的控制器和方法
US10572385B2 (en) Granting exclusive cache access using locality cache coherency state
US8572614B2 (en) Processing workloads using a processor hierarchy system
US9715470B1 (en) Direct memory access between an accelerator and a processor using a coherency adapter
CN111124951A (zh) 管理数据访问的方法、设备和计算机程序产品
US11048635B2 (en) Controlling a rate of prefetching based on bus bandwidth
US11243936B2 (en) Selectively requesting updated data values
US11068418B2 (en) Determining memory access categories for tasks coded in a computer program
US11494285B1 (en) Static code analysis tool and configuration selection via codebase analysis
CN110134623A (zh) 可定制的多队列dma接口
US10628313B2 (en) Dual clusters of fully connected integrated circuit multiprocessors with shared high-level cache
CN106873970A (zh) 一种操作系统的安装方法和装置
JP2022504370A (ja) ストレージ・システムにおけるホールを有するトラックのデステージ
CN107220375B (zh) 数据读写方法和服务器
CN109726039A (zh) 用于管理虚拟机的方法和设备
CN110168498A (zh) 暂时抑制受约束存储操作数请求的处理
US10866895B2 (en) Steering tag support in virtualized environments
US10788991B2 (en) Managing program access to data storage resources
US20160217076A1 (en) Speculative cache reading using shared buffer
US20190179754A1 (en) Memory barriers in a coherence directory
CN115686769A (zh) 根据cxl协议处理一致存储器事务的系统、装置和方法
US9483403B2 (en) Techniques for preserving an invalid global domain indication when installing a shared cache line in a cache
US11074194B2 (en) Managing direct memory access
WO2023129761A2 (en) Quantum computing program compilation using cached compiled quantum circuit files

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