用于存储器系统性能监视的存储器集线器和方法技术方案

技术编号:2918949 阅读:165 留言:0更新日期:2012-04-11 18:40
一种存储器模块,包括和多个存储器装置连接的存储器集线器。该存储器集线器包括至少一个性能计数器,该性能计数器跟踪一个或多个系统度量,例如页面命中率、预取命中次数或百分比、缓存命中率或百分比、读速率、读请求次数、写速率、写请求次数、存储器总线利用率或百分比、本地集线器请求速率或次数和/或远程集线器请求速率或次数。

【技术实现步骤摘要】
【国外来华专利技术】
本专利技术涉及计算机系统,具体涉及具有存储器集线器(memoryhub)的计算机系统,其中的存储器集线器将多个存储器装置和处理器或其它存储器访问装置连接起来。
技术介绍
计算机系统使用存储器装置,如动态随机存取存储器(DRAM)装置来存储由处理器访问的数据。这些存储器装置通常作为计算机系统的系统存储器使用。在典型的计算机系统中,处理器通过处理器总线以及存储器控制器与系统存储器通信。处理器发出存储器请求,该存储器请求包括如读命令一样的存储器命令以及一个指定要从中读取数据或指令的位置的地址。存储器控制器利用命令和地址产生适当的命令信号以及行和列地址,这些信息被应用于系统存储器。响应这些命令和地址,在系统存储器和处理器间传送数据。存储器控制器通常是系统控制器的一部分,系统控制器还包括用于把处理器总线和扩展总线如PCI总线连接起来的总线桥电路。尽管存储器装置的运行速度一直在提高,但是这种运行速度的提高未能赶上处理器运行速度的提高。连接处理器和存储器装置的存储器控制器的运行速度的提高更慢。存储器控制器和存储器装置的较慢速度限制了处理器和存储器装置间的数据带宽。除了处理器和存储器装置间有限的带宽外,计算机系统的性能还受等待时间问题的限制,等待时间问题增加了从系统存储器装置读数据所需的时间。具体而言,将存储器装置读命令传送给系统存储器装置,如同步DRAM(SDRAM)装置时,所读数据只有在几个时钟周期的延迟后才从SDRAM装置输出。因此,尽管SDRAM装置能够以高数据速率同步输出突发数据,但是最初提供数据的延迟会严重降低使用这种SDRAM装置的计算机系统的运行速度。缓解存储器等待时间问题的途径之一是使用通过存储器集线器和处理器连接的多个存储器装置。在存储器集线器的结构中,系统控制器或存储器控制器和多个存储器模块连接,每个存储器模块包括和多个存储器装置连接的存储器集线器。存储器集线器在控制器和存储器装置间高效地传送存储器请求和响应。采用这种结构的计算机系统能够有更高的带宽,因为在一个存储器装置对在先的存储器访问作出响应的同时,处理器可以访问另一个存储器装置。例如,处理器可以向系统的一个存储器装置输出写数据,而系统的另一个存储器装置则在准备为存储器提供读数据。尽管采用存储器集线器的计算机系统能够提供优越的性能,但是因为若干原因,它们还是经常不能以最优的速度运行。例如,尽管存储器集线器可以为计算机系统提供更大的存储器带宽,但是计算机系统依然存在前文描述的那种等待时间问题。具体而言,尽管在一个存储器装置准备传送数据的同时,处理器可以与另一个存储器通信,但是有时在能够利用来自另一个存储器装置的数据之前,需要先从一个存储器装置接收数据。如果必须在能够利用接收自一个存储器装置的数据之前接收来自另一个存储器装置的数据,等待时间问题会继续降低这种计算机系统的运行速度。已经用来缩短存储器装置等待时间的一种技术是预取数据,即,在执行的程序请求数据之前,从系统存储器读取这些数据。通常,要预取的数据是根据以前获取的数据的模式选择的。这个模式可以象从中获取数据的地址序列一样简单,从而在执行的程序需要数据之前,能够从这个序列中随后的地址获取这些数据。当然这种模式,也称为“跨距”(stride),可以更复杂。此外,尽管存储器集线器可以为计算机系统提供更大的存储器带宽,但是计算机系统还是存在吞吐量问题。例如,在可以从存储器单元的某一行读数据之前,通常通过平衡阵列中的数字线对阵列中的数字线进行预充电。然后通过连接这一行的存储器单元和相应列中的数字线来打开这一行。然后,连接在每一列中数字线之间的相应感应放大器,响应对应于存储在相应存储器单元中的数据的电压变化。一旦将行打开,就可以通过将数字线连接到数据读路径,从打开的行的每一列传送数据。因此,打开一行,也称为一页,会耗费一定量的时间,给存储器的吞吐量带来限制。最后,是否预取数据(以及预取哪些数据),是否预充电或打开一行,以及是否缓存访问的数据,关于这些问题的最优决策可以随时间改变,并且随着和存储器集线器连接的处理器执行的应用程序而改变。存储器集线器结构的另一个潜在问题涉及把存储器集线器用作渠道,通过存储器集线器将存储器请求和数据传送给下游存储器模块以及从下游存储器模块传送过来。如果存储器请求和数据不能通过存储器集线器有效地传送,采用存储器集线器的存储器系统的存储器带宽会严重受限。所有上述问题都可以通过配置存储器模块的不同方面得到某种程度的解决,这里的存储器模块包括安装在模块上的存储器集线器。然而,在能够优化存储器模块的配置前,需要或者应该分析存储器集线器的性能,以便确定哪些方面有性能欠缺。然而,尚未开发出合适的技术来分析基于处理器的系统中使用的存储器系统的现有性能。因此,需要一种计算机结构,它具有存储器集线器结构的优点,这种存储器集线器结构能够确定使用这种存储器集线器结构的存储器系统的性能,从而能够优化系统配置。
技术实现思路
根据本专利技术的一个方面,提供包括多个存储器装置和存储器集线器的存储器模块和方法。存储器集线器包括链路接口,如光输入/输出端口,该链路接口接收存储器请求,以访问至少一个所述存储器装置的存储器单元。存储器集线器还包括和存储器装置连接的存储器装置接口,该存储器装置接口用于把存储器请求传送给存储器装置,以访问至少一个所述存储器装置的存储器单元,并响应至少一些存储器请求接收读数据。存储器集线器还包括性能计数器,该性能计数器和存储器装置接口和/或链路接口连接。性能计数器用于跟踪从包括页面命中率、预取命中次数或百分比、缓存命中率或百分比、读速率、读请求次数、写速率、写请求次数、存储器总线利用率或百分比、本地集线器请求速率或次数以及远程集线器请求速率或次数的组中选出的至少一个度量。附图说明图1是根据本专利技术一个实例的计算机系统的框图,其中多个存储器模块中的每一个都包括存储器集线器。图2是图1所示计算机系统使用的存储器集线器的框图,这个存储器集线器包括本专利技术的一个实例中的性能监视器。图3是包括本专利技术一个实例中性能计数器的存储器集线器的框图。具体实施例方式图1示出了本专利技术一个实例中的计算机系统100。该计算机系统100包括处理器104,处理器104用于实现各种计算机功能,如运行特定软件以完成特定计算或任务。处理器104包括处理器总线106,该总线通常包括地址总线、控制总线和数据总线。处理器总线106通常和高速缓冲存储器108连接,该高速缓冲存储器,如前文所述,通常是静态随机存取存储器(SRAM)。最后,处理器总线106和系统控制器110连接,该控制器110有时也称为“北桥”或“存储器控制器”。系统控制器110充当很多其它组件到处理器104的通信路径。具体而言,系统控制器110包括图形端口,该图形端口通常和图形控制器112连接,图形控制器112则和视频终端114连接。系统控制器110还和一个或多个输入装置118如键盘或鼠标连接,以使操作者和计算机系统110对接。通常,计算机系统100还包括通过系统控制器110和处理器连接的一个或多个输出装置120,如打印机。一个或多个数据存储装置124通常也通过系统控制器110和处理器104连接,使处理器104能够将数据存入内部或外部存储介质(未示出)或从中获得本文档来自技高网
...

【技术保护点】
一种存储器模块,包括多个存储器装置;以及存储器集线器,包括:链路接口,接收访问所述多个存储器装置的至少一个中的多个存储器单元的多个存储器请求;存储器装置接口,和所述多个存储器装置连接,该存储器装置接口用于把多 个存储器请求传送给所述多个存储器装置,以访问所述存储器装置的至少一个中的多个存储器单元,并且响应所述存储器请求中的至少一些来接收读数据;性能计数器,和所述存储器装置接口连接,该性能计数器用于跟踪至少一个性能度量。

【技术特征摘要】
【国外来华专利技术】...

【专利技术属性】
技术研发人员:约瑟夫M杰德洛
申请(专利权)人:米克伦技术公司
类型:发明
国别省市:US[美国]

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

1