用于低功率分支预测的方法、系统及计算机可访问的介质技术方案

技术编号:8049289 阅读:175 留言:0更新日期:2012-12-07 02:34
提供了能够在例如模拟电路上利用神经分支预测器的方法、系统及计算机可访问的介质的示例。例如,可以使用电流求和来代替传统神经预测器设计中通常使用的数字点积。也可以使用缩放因子来提高预测精确度。

【技术实现步骤摘要】
【国外来华专利技术】用于低功率分支预测的方法、系统及计算机可访问的介质关于政府资助的研究的声明本专利技术是在美国政府的支持下、至少部分地由国防部高级研究计划处资助的,基金号为F33615-03-C-4106。因此,美国政府对本专利技术享有一定的权益。
技术介绍
在计算机架构中,分支预测器可以是处理器的一部分,用于确定程序的指令流中的条件分支是否可能被采用。这可以称为分支预测。分支预测器对于如今的现代超标量处理器实现高性能是重要的,并且能够促使处理器取得并执行指令,而不用等待解析分支。大多数流水线处理器执行某种形式的分支预测,这是因为它们应当在当前指令被执行之前猜测要取得的下一个指令的地址。分支预测仍然是利用单线程性能的处理器获得高性能的重要要素之一。现代分支预测器可以在许多代码上实现高精确度,但是如果处理器要继续改进单线程性能,则需要进一步开发。对于通用处理器而言,尤其是在可用核的数目超过可用线程数目时,精确的分支预测仍然很重要。神经分支预测器——一种相关预测器,使用点积计算,基于针对先前分支所观测到的历史模型来预测当前分支——已经显示出获得高预测精确度的希望。然而,由于计算需求,神经分支预测器传统上已经规定了较差的功率和能量特性。某些提出的设计已经以一定的精确度为代价减小了预测器的等待时间,然而这类设计从功率方面来看仍然缺乏竞争力。针对每一预测计算点积的需求(可能具有数十或甚至数百元素)可能不适于当前形式的工业应用。
技术实现思路
提供了能够在例如模拟电路上利用神经分支预测器的方法、系统及计算机可访问的介质的示例。例如,可以使用电流求和,代替传统神经预测器设计中通常使用的数字点积。还可以使用缩放因子来提高预测精确度。在一个示例中,提供了一种方法,用于利用模拟分支预测器来提供分支预测。该方法包括提供第一分支预测,获得与分支关于所述第一分支预测的相关性相关联的权重的电流近似,以及基于至少一个电流近似来产生第二分支预测。在另一示例中,提供了一种处理装置,在执行软件程序时,该处理装置被配置为执行处理过程。该过程可以包括提供第一分支预测,获得与分支关于所述第一分支预测的相关性相关联的权重的电流近似,以及基于至少一个电流近似来产生第二分支预测。在又一示例中,提供了一种计算机可访问的介质,在其上存储了用于模拟分支预测器内的分支预测的计算机可执行指令。当处理装置执行该指令时,处理装置被配置为执行过程。该过程可以包括提供第一分支预测,获得与分支关于所述第一分支预测的相关性相关联的权重的电流近似,以及基于至少一个电流近似来产生第二分支预测。尽管公开了多个示例,然而本领域技术人员根据下列详细描述仍然可以获得其他示例。显而易见的是,这里所描述的系统、设备及方法能够在各个明显的方面进行修改,所有这些均不背离这里的教导的精神和范围。相应地,详细描述被视为本质上是示意性的,而非限制性的。附图说明根据以下说明和所附权利要求,结合附图,本公开的前述和其他方面将更加清楚。在认识到这些附图仅仅示出了根据本公开的一些示例且因此不应被认为是限制本公开范围的前提下,通过使用附图以额外的特征和细节来详细描述本公开。在附图中图I是根据一个示例的计算系统的示意的框图。图2是根据一个示例的神经分支预测器的示意的功能框图。 图3是根据一个示例的模拟神经分支预测方案的示意的示意功能图。图4是根据一个示例的适当方法的示意的流程框图。具体实施例方式在以下详细说明中,参考了作为详细说明的一部分的附图。在附图中,类似符号通常表示类似部件,除非上下文另行指明。具体实施方式部分、附图和权利要求书中记载的示例性示例并不是限制性的。在不脱离在此所呈现主题的精神或范围的情况下,可以利用其他示例,且可以进行其他改变。应当理解,在此一般性记载以及附图中图示的本公开的各方案可以按照在此隐含公开的多种不同配置来设置、替换、组合、分割和设计。本公开针对涉及分支预测的方法、设备、计算机程序及系统。一种这样的系统的特定优选实施例在附图中示意,并在下面进行描述。许多其他实施例也是可以的,然而时间和空间限制使得无法在一个文档中包括那些实施例的详尽列表。相应地,权利要求的范围内的其他实施例对于掌握了本专利教导的本领域技术人员而言是显而易见的。附图包括进行编号,以指定附图内示出的示例的示意组件,包括如下组件计算机系统100、处理器101、系统总线102、操作系统103、应用104、只读存储器105、随机存取存储器106、磁盘适配器107、磁盘机108、通信适配器109、接口适配器110、显示适配器111、键盘112、鼠标113、扬声器114、显示监视器115、模拟分支预测器200、感知机的表201、分支历史寄存器202、散列函数203、点积204、偏置权重205、更新权重向量206、权重向量207、数模转换器401、分流器402、电流至电压转换器403、比较器404、比较器输出411、训练输出412和413、幅度线422、电流线423、权重偏置424、电流源450、偏置晶体管451、地460、以及异或函数465。图I是根据一些示例布置的计算系统100的框图的示意图示。计算机系统100也表示本公开的硬件环境。例如,计算机系统100可以具有处理器101,处理器101通过系统总线102与各个其他组件耦合。处理器101可以具有根据这里的示例进行配置的模拟分支预测器200。下面,结合对图2所示的示例的描述,更详细地描述了处理器101。参照图1,操作系统103可以在处理器101上运行,控制并协调图I中的各个组件的功能。根据本公开的示例的原理的应用104可以与操作系统103 —起执行,并向操作系统103提供调用和/或指令,其中该调用/指令实现要由应用104执行的各项功能或服务。参照图1,只读存储器(“ROM”)105可以耦合至系统总线102,并且可以包括基本输入/输出系统(“BIOS”),BIOS可以控制计算机系统100的某些基本功能。随机存取存储器(“RAM”)106和磁盘适配器107也可以耦合至系统总线102。应注意,软件组件(包括操作系统103和应用104)可以加载至RAM 106以用于执行,RAM 106可以是计算机系统100的主存储器。磁盘适配器107可以配备有集成驱动电子设备(“IDE”)或并行高级技术附件(“PATA”)适配器、串行高级技术附件(“SATA”)适配器、小型计算机系统接口(“SCSI”)适配器、通用串行总线(“USB”)适配器、IEEE 1394适配器、或与磁盘机108 (例如磁盘驱动器)通信的其他适当的适配器。参照图1,计算机系统100还可以包括与总线102耦合的通信适配器109。通信适配器109可以使总线102与外部网络(未示出)互连,由此使得计算机系统100与其他类似的和/或不同的设备进行通信。输入/输出(“I/O”)设备也可以经由用户接口适配器110和显示适配器111与计算机系统100连接。例如,键盘112、鼠标113和扬声器114可以通过用户接口适配器110 与总线102互连。数据可以通过这些示例设备中的任意设备提供给计算机系统100。显示监视器115可以通过显示适配器111与系统总线102连接。在本示例方式中,用户可以通过键盘112和/或鼠标113给计算机系统100提供数据或其他信息,并经由本文档来自技高网...

【技术保护点】

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

【专利技术属性】
技术研发人员:道格·伯格勒妮·圣阿芒
申请(专利权)人:德克萨斯系统大学董事会
类型:发明
国别省市:

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

1