当前位置: 首页 > 专利查询>英特尔公司专利>正文

用于流水线处理有序的输入/输出事务的设备、方法和计算机系统技术方案

技术编号:2874220 阅读:305 留言:0更新日期:2012-04-11 18:40
一种用于在一个分布式存储器、高速缓存相干、多处理器系统中把有序的输入/输出事务流水线处理到相干存储器的方法。一个预取引擎响应于一个来自一条输入/输出总线、送往一个分布式、相干存储器的事务从该分布式、相干存储器中预取数据。一个输入/输出相干高速缓存缓冲器接收该预取的数据并且保持和该分布式相干存储器以及在该系统中的其它高速缓存代理相干。(*该技术在2021年保护过期,可自由使用*)

【技术实现步骤摘要】

技术介绍
1.领域本专利技术的一个实施例涉及包含分布式存储器的计算机系统领域,尤其涉及一种用于在这样的系统中流水线处理输入/输出事务的方法。2.相关技术的讨论某些输入/输出(I/O)总线,诸如外围设备部件互连(PCI)总线,具有严格的事务次序要求。在其中在这样一个I/O总线和存储器之间仅仅具有一个路径的计算机系统中,流水线处理来自I/O总线的有序请求是相对容易的。对于具有非分布式存储器体系结构的系统这个方法运行良好,因为在该I/O总线和存储器之间存在单个路径。然而,对于具有一个分布式存储器体系结构的系统,其在一个I/O总线和存储器之间有多个路径,由于在多个路径上保持事务次序涉及的复杂度,一般惯例是不流水线处理来自I/O总线的有序请求。使用一种非流水线的方法,一个I/O桥接器在发布下一个I/O总线请求之前完成到存储器的第一个I/O总线请求。这样一种方法能够限制用于面向分布式存储器的事务能达到的I/O吞吐量。这可能导致总体系统性能损失或者需要非寻常的软件修改来避免限制能达到的I/O吞吐量。附图简要说明本专利技术通过示例进行说明且不局限于附图中的图表,其中类似的参考号指示类似的单元,而且附图包含附图说明图1是一个示范性的分布式存储器、高速缓存相干的、多处理器系统的框图,在该系统中依据一个实施例,有序的I/O事务可以被有效地流水线处理。图2一个实施例中的输入/输出桥接器的框图,该输入/输出桥接器提供用于有序I/O事务的有效流水线处理而且可以在图1中的系统中使用。图3是一个流程图,说明了图2中的预取引擎的操作。图4是一个流程图,说明了图2中的退出引擎的操作。图5是一个流程图,说明了一个用于流水线处理有序I/O事务的实施例的一种方法。详细说明描述了一种用于在一个分布式存储器、高速缓存相干系统中流水线处理有序输入/输出(I/O)事务的方法和装置。在下面说明中,为了说明起见描述了特定类型的集成电路、系统与电路配置。然而,将要理解其它实施例适用于其它类型的集成电路,以及以另一种方式配置的电路和/或系统。对于一个实施例,响应于来自一条输入/输出总线、指向一个分布、相干存储器的第一事务,一个预取引擎从一个分布、相干存储器中预取数据。一个相干高速缓存缓冲器接收该预取的数据并且和该分布、相干存储器以及在该系统中的其它相干高速缓存存储器保持相干。图1是一个框图,显示一个其中可以有利地使用本专利技术的一个实施例的示例计算机系统100。计算机系统100是一个分布式存储器、高速缓存相干、多处理器系统。该示例系统100包含处理结点105和110,这些结点可以被包含在大量处理结点当中。在系统100中还包含一个互连网络115和一个输入/输出(I/O)节点120。每一个处理结点105和110都包含一个或多个处理器125来处理指令、分别包含一个或多个芯片组部件130和135、以及分别包含一个或多个本地存储器140和145。芯片组部件130和135可以执行诸如,例如用于相应节点的存储器控制、多路处理支持和/或高速缓存相干性维护的功能。一个或多个处理器125可以每个都包含或者与一个高速缓冲存储器147相连。用于一个实施例的高速缓存存储器147是互相相干的,而且在这个示例中,具有由存储器140和145实现的分布、相干存储器。一个实施例中的存储器140和145一起操作作为一个分布、相干主存储器。每一个存储器140和145可以是一个同样包含非相干区域的大存储器的一部分或者一个区域。对于一个实施例,使用众所周知的MESI(修改、排它、共享或者无效)状态协议结合相干系统互连总线160、165和/或170,保持在高速缓存存储器147和存储器140和145之间的相干性。相干系统互连总线160、165和170经由互连网络115在处理结点105和110以及I/O节点120之间通信信息,以便在各个存储器140、145和在I/O节点120中的相干高速缓存缓冲器之间保持相干性,将在下面对该I/O节点120进行更详细的描述。对于一个实施例,依据在处理结点和I/O节点之间的通信事务,相干系统互连总线160、165和170是没有次序限制的点到点互连。可以提供互连网络115来在该I/O节点120和诸如处理结点105和110的处理结点之间通信消息。对于一个实施例,互连网络115没有保持在该I/O节点120和一个或多个处理结点105和110之间通信的信息当中的次序。该I/O节点120包含一个I/O桥接器150来把一个或多个I/O总线155,诸如,例如一个外围设备部件互连(PCI)总线,和处理结点105和110接口。下面参见图2对一个实施例中的I/O桥接器120的更多细节进行描述。就其它实施例来说,可以以其它方式配置系统100。例如,芯片组和/或存储器可以被包含在一个或多个处理器125内,和/或互连网络115可以不被包含在内。此外,可以依据不同的协议和/或使用不同类型的互连方法维持存储器的相干性。其中在I/O总线和存储器之间不止一条路径的其它类型的系统配置也在各种实施例的范围内。图2是I/O桥接器250的框图,该I/O桥接器250可以用于一个实施例以实现图1中的I/O桥接器150。I/O桥接器250包含一个或多个I/O高速缓存缓冲器205、一个或多个I/O事务请求缓冲器210、一个预取引擎215和一个退出引擎220。还可以包含其它电路,诸如其它I/O事务处理、缓存和控制电路(未显示)。如以下更详细描述得那样,高速缓存缓冲器205包含地址、数据和状态字段,而且被用来响应于一个或多个I/O事务请求存储预取的数据,以便于I/O事务请求的流水线操作。地址字段指示在相应数据字段中的数据保存在存储器中那个位置的地址。保持一个实施例中的高速缓存缓冲器205与其中包含I/O桥接器250的系统中的其它相干存储器的相干。例如,在I/O桥接器250被包含在图1的系统100中的场合,保持高速缓存缓冲器205与分布式的相干存储器140和145、以及相干高速缓冲存储器147相干。因此,I/O高速缓存缓冲器205中的状态字段被用于指示在相应数据字段中的数据的相干性状态(例如,用于一个其中使用了MESI协议的实施例的M(修改)、E(排它的)、S(共享)或者I(无效))。提供了I/O事务请求缓冲器210(在此也被称为I/O请求缓冲器),以存储从一条或多条I/O总线255送往根据图1描述的分布式的相干存储器的事务请求。另一方面,这种请求在此可以被称为入站相干请求或者入站相干I/O请求。就一个实施例来说,I/O事务请求缓冲器210可以用来存储所有的1/O事务请求,不管它们是否被送往相干的存储器区域。没有被送往相干存储器的I/O请求在此被称为非相干的事务请求,而且可以包含,例如I/O端口访问、配置访问、中断、和/或诸如锁定之类的特定事务。此外,甚至某些被送往相干存储器区域的I/O事务可以被分类为非相干的事务。例如,在锁定序列期间对相干存储器的存储器访问可以被分类为非相干的事务。所希望的相干高速缓存缓冲器和/或输入/输出请求缓冲器的大小可以通过均衡所希望的对存储器的延迟和I/O吞吐量相对于用于缓冲器的可用空间来确定。此外,就某些实施例来说,对写或者读多行存储器的一个I/O事务请求可以作为单个事务被保存在I/O事务请求缓冲器本文档来自技高网...

【技术保护点】
一个装置,包含:一个响应于从一条输入/输出总线送往一个分布式、相干存储器的第一事务从该分布式、相干存储器中预取数据的预取引擎;以及一个接收该预取的数据的输入/输出相干高速缓存缓冲器,该相干高速缓存缓冲器和该分布式相干存储器以及在一个 包含该输入/输出相干高速缓存缓冲器的系统中的其它高速缓存存储器相干。

【技术特征摘要】
...

【专利技术属性】
技术研发人员:K克雷塔L罗伊A库马M哈雷
申请(专利权)人:英特尔公司
类型:发明
国别省市:US[美国]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1