计算机存储器的性能计数器制造技术

技术编号:38864418 阅读:21 留言:0更新日期:2023-09-17 10:05
在一些示例中,计算机存储器的性能计数器可以包括查明与计算机存储器的存储器地址范围相关联的请求。存储器地址范围可以被分配给多个指定性能层中的指定性能层。与存储器地址范围的性能属性相关联的性能值可以被查明,并且权重值可以被确定。基于所查明的请求和权重值,与关联于存储器地址范围的计数器相关联的计数值可以被递增。可以进行如下确定:其是关于存储器地址范围是否要被分配给多个指定性能层中的不同的指定性能层。基于存储器地址范围要被分配给不同的指定性能层的确定,存储器地址范围可以被分配给不同的指定性能层。地址范围可以被分配给不同的指定性能层。地址范围可以被分配给不同的指定性能层。

【技术实现步骤摘要】
计算机存储器的性能计数器
[0001]本申请是申请日为2018年11月02日、申请号为201880072567.6、专利技术名称为“计算机存储器的性能计数器”的中国专利技术专利申请的分案申请。

技术介绍

[0002]计算机系统可以包括各种类型的计算机存储器。例如,计算机存储器可以包括易失性存储器,诸如,用于计算机系统中的主要存储的随机存取存储器(RAM)。与易失性存储器相比,非易失性存储器可以用于辅助存储或永久存储。非易失性存储器的示例包括只读存储器、闪存、磁性计算机存储设备等。
[0003]计算机存储器可以是不均匀的,因为计算机存储器的不同层可以包括用于质量的不同值,包括时延、吞吐量、容量、耐久性(endurance)和耐用性(durability)。时延可以被描述为在用于传输数据或执行命令的关联指令之后开始数据传输或命令执行之前的延迟。吞吐量可以被描述为可以从计算机存储器读取数据或将数据存储到计算机存储器中的速率。进一步地,耐久性可以被描述为在计算机存储器变得不可靠之前可以被应用于计算机存储器的程序和/或擦除周期的数量。耐用性可以被描述为永久存储器的属性,该属性描述了数据在不施加功率的情况下可以在存储器中保持有效多长时间。
[0004]为了优化计算机系统性能,计算机存储器中的内容可能需要被放置在计算机存储器的适当层中。例如,某些内容可能需要被放置在包括指定时延的计算机存储器的层中,而其他内容可能需要基于吞吐量、耐久性和/或其他因素被放置在其他层中。在这方面,选择将放置内容的计算机存储器的层使得所选层与使用该层的应用(或另一设备)的行为相匹配在技术上具有挑战性。预测应用的行为以选择适当的层在技术上也具有挑战性,其中与计算机系统相关联的操作系统或管理程序可以利用预测的行为来做出关于内容在特定层中的放置的决策。更进一步地,由于不同层的行为和内容在特定层中的放置可能随时间变化,因此动态地修改内容在计算机存储器的特定层中的放置在技术上具有挑战性。
[0005]计算机存储器的一层(或通常的存储位置)也可能受到来自访问或以其他方式利用该层的内容的多个源的争用(contention)。例如,特定层可以包括适当放置的内容。然而,由于对该特定层的访问数量相对大,因此使用该特定层可能会导致与该特定层相关联的计算机系统性能降低。在这方面,预测特定层的使用(usage)何时超过指定使用在技术上具有挑战性。修改特定层的使用来满足指定使用以增加或以其他方式保持指定成本、性能或功耗水平的计算机系统的性能在技术上也具有挑战性。
[0006]更进一步地,计算机存储器的层可以被定义以通过“着色”映射到缓存中,其中分配有相同颜色的层的所有部分将竞争缓存中的相同放置。如果具有相同颜色的两组或更多组分离的存储器被频繁使用,则这种竞争可以降低计算机存储器的性能。在这方面,由于使用模式随时间而变化,并且进一步地由于在可能分配存储器区域时对该区域的计划使用的了解有限,静态地选择避免这种性能下降的颜色在技术上具有挑战性。在计算机系统上监测和定位发生这种冲突的区域在技术上也具有挑战性。
附图说明
[0007]本公开的特征通过示例被图示,并且在以下(多个)附图中不受限制,其中相同的数字指示相同的元件,在附图中:
[0008]图1图示了根据本公开的实施例的用于计算机存储器装置的性能计数器的布局;
[0009]图2图示了根据本公开的实施例的布局的示例,该布局包括用于测量图1的计算机存储器装置的性能计数器的计算机存储器使用的计数器;
[0010]图3图示了根据本公开的实施例的用于计算机存储器的性能计数器的框图;
[0011]图4图示了根据本公开的实施例的用于计算机存储器的性能计数器的方法的流程图;以及
[0012]图5图示了根据本公开的另一实施例的用于计算机存储器的性能计数器的框图。
具体实施方式
[0013]出于简单和说明性的目的,本公开通过主要参照示例来描述。在以下描述中,许多特定细节被阐述以便提供对本公开的透彻理解。然而,将明显的是,本公开可以在不限于这些特定细节的情况下被实践。在其他实例中,一些方法和结构未被详细描述,以免不必要地混淆本公开。
[0014]在整个本公开中,术语“一”和“一个”旨在表示特定元素中的至少一个。如本文所使用的,术语“包括(includes)”是指包括但不限于,术语“包括(including)”是指包括但不限于。术语“基于”是指至少部分地基于。
[0015]本文公开了用于计算机存储器的性能计数器的装置、用于计算机存储器的性能计数器的方法以及在其上存储有机器可读指令以提供用于计算机存储器的性能计数器的非瞬态计算机可读介质。本文所公开的装置、方法和非瞬态计算机可读介质提供了对计算机存储器的存储器模块、大容量存储器等的计数器的实现。计数器可以用于通过获得应用(或另一设备)的行为数据以将内容放置在计算机存储器的适当层中的计算机存储器中来至少解决上面提到的技术挑战。计数器还可以通过定位可能的广泛争用来至少解决上面提到的技术挑战,这使得其他步骤能够被发起以降低该争用。存储器模块可以包括双倍数据速率(DDR)双列直插式存储器模块(DIMM)等,并且大容量存储器可以包括只读存储器、闪存等。
[0016]每个计数器可以监测计算机系统内的计算机存储器的特定范围的活动。例如,多个计数器可以被使用,并且包括跨越计算机系统的整个计算机存储器的存储器范围。每个存储器范围可以对应于计算机存储器的块,操作系统(OS)或管理程序可能能够在计算机存储器的不同的指定性能层之间移动该块。
[0017]根据示例,计数器可以包括用于读取活动和写入活动以及不承载数据的其他耗时活动(诸如,刷新周期、程序周期和空闲时间)的分离的计数器。备选地或附加地,计数器可以考虑读取活动和写入活动的聚合。备选地或附加地,计数器可以包括仅用于读取活动的计数器。备选地或附加地,计数器可以包括仅用于写入活动的计数器。备选地或附加地,计数器可以包括用于记录周期混合和流水线命令活动的计数器。
[0018]关于所使用的多个计数器,根据示例,计数器的数量可能足以对足够数量的区域进行计数,以允许系统的整个存储器覆盖范围内的存储器活动被及时地扫描,或者在默认情况下对标准大小的所有区域进行计数,它们都是用于移动以具有单独的计数器的候选。
因此,充足数量的计数器可以被灵活地分配给感兴趣的存储器区域。例如,计数器可以被分配给计算机存储器的存储器模块,以使内容在存储器模块的不同的指定性能层之间移动。
[0019]计数器还可以包括汇总(summary)计数器。在这方面,即使每个页面都可以包括计数器,汇总计数器也可以提供DIMM的总计数。汇总计数器可以提供对总活动是否低于关注阈值的确定。
[0020]关于计数器大小,根据示例,计数器可以足够大以捕获在关联计数值的检查之间的间隔中期望的完整计数范围。备选地或附加地,当达到最大计数值时,计数器可以饱和。备选地或附加地,自由运行的计数器可以以全计数回绕,回到零,并且对关联计数值的本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种用于计算机存储器的性能计数器的装置,包括:处理器;以及存储机器可读指令的存储器,所述机器可读指令在由所述处理器执行时使所述处理器:基于所计算的计数值增量来递增与关联于存储器地址范围的计数器相关联的计数值,所计算的所述计数值增是根据所述存储器地址范围的属性而确定的;其中所述属性包括:与所述存储器地址范围相关联的时延;与所述存储器地址范围相关联的请求的间歇增加或减少;或与所述存储器地址范围相关联的读写请求周期的分散性。2.根据权利要求1所述的装置,其中基于根据所述存储器地址范围的所述属性而确定的所计算的所述计数值增量,递增与关联于所述存储器地址范围的所述计数器相关联的所述计数值的所述机器可读指令在由所述处理器执行时还使所述处理器:通过以下来基于所查明的与所述存储器地址范围相关联的性能值确定权重值:根据所述性能值从基础性能值的增加或减少,成比例地增加或减少基础权重值;通过将所确定的所述权重值和与关联于所述存储器地址范围的所述计数器相关联的基础计数值增量相乘,来确定计数值增量增加或减少;以及以所确定的所述计数值增量增加或增量减少来递增所述计数值。3.根据权利要求1所述的装置,其中所述机器可读指令在由所述处理器执行时还使所述处理器:确定与所述计数器相关联的所述计数值;确定自与所述计数器相关联的所述计数值的所述确定以来是否已经过去了指定时间段;以及基于自与所述计数器相关联的所述计数值的所述确定以来已经过去了所述指定时间段的确定,将所述计数值降低指定量。4.根据权利要求1所述的装置,其中所述机器可读指令在由所述处理器执行时还使所述处理器:确定指定持续时间内与所述计数器相关联的所述计数值,所述指定持续时间小于与所述计数器相关联的所有计数值的总持续时间。5.根据权利要求1所述的装置,其中所述机器可读指令在由所述处理器执行时还使所述处理器:确定与存储器地址范围相关联的请求是否包括相对短的读取、相对短的写入、相对长的读取或相对长的写入;以及基于所述请求是否包括所述相对短的读取、所述相对短的写入、所述相对长的读取或所述相对长的写入的所述确定,计算所述计数值增量。6.根据权利要求1所述的装置,其中所述机器可读指令在由所述处理器执行时还使所述处理器:确定所述计数值是否等于最大计数值;以及
基于所述计数值等于所述最大计数值的确定,确定权重值以在所述最大计数值之后递增地增加计数值。7.根据权利要求1所述的装置,其中所述机器可读指令在由所述处理器执行时还使所述处理器:确定所述计数值是否等于最大计数值;以及基于所述计数值等于所述最大计数值的确定,确定权重值以在所述最大计数值之后非递增地增加计数值。8.一种计算机实现的方法,包括:由至少一个处理器基于计数值增量,递增与关联于存储器地址范围的计数器相关联的计数值,计数值增量是根据存储器地址范围的属性的函数而确定的;以及由所述至少一个处理器确定指定持续时间内与所述计数器相关联的所述计数值,所述指定持续时间小于与所述计数器相关联的所有计数值的总持续时间。9.根据权利要求8所述的计算机实现的方法,其中所述属性包括与所述存储器地址范围相关联的时延。10.根据权利要求8所述的...

【专利技术属性】
技术研发人员:J
申请(专利权)人:微软技术许可有限责任公司
类型:发明
国别省市:

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

1