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

计算机指令的降功率实现制造技术

技术编号:18054532 阅读:40 留言:0更新日期:2018-05-26 11:10
系统和方法可提供图形处理器,所述图形处理器可标识操作条件,在该操作条件下,某些浮点指令可将功率利用至相比当指令在其他操作条件下执行时更少的硬件资源。操作条件可通过检查在给定指令中使用的操作数来确定,包括操作数的相对幅度以及操作数是否可取为等于某些定义的值。浮点指令包括用于加法操作、乘法操作、比较操作和/或融合的乘‑加操作的指令。

【技术实现步骤摘要】
【国外来华专利技术】计算机指令的降功率实现相关申请的交叉引用本申请要求2014年12月26日提交的美国正式专利申请序列号第14/583,300的优先权权益。
技术介绍
随着图形逻辑在功率使用和能力上增长,可调用图形逻辑来处理更高需求的任务,包括先前可由系统的中央处理单元(CPU)处理的一些任务。同时,功率约束(诸如,便携式系统中的那些约束)带来挑战。因此,更高效地使用可用的能量源的图形逻辑比较低效地使用可用能量源的图形逻辑更受期望。另外,图形处理器可提供汇编语言指令集的硬件实现。实现的复杂度越高,(即,实现给定指令集所使用的硬件量越大),则实现会使用的功率量就越大。因此,在许多使用的合计中,对于图形逻辑和/或包括该图形逻辑的系统的总体功率使用和能量效率会有影响。附图说明通过阅读以下说明书和所附权利要求书并通过参考以下附图,各实施例的各种优点对本领域技术人员将变得显而易见,在附图中:图1是根据实施例的图形处理架构的示例的框图;图2是根据实施例基于操作数特性控制到一个或多个源的功率流的硬件布置的示例的框图;图3是根据实施例的执行乘法指令的方法的示例的流程图;图4是根据实施例的执行加法指令的方法的示例的流程图;图5是根据实施例的执行比较指令的方法的示例的流程图;图6是根据实施例的执行融合的乘-加指令的方法的示例的流程图;图7-9是根据实施例的数据处理系统的概览的示例的框图;图10是根据实施例的图形处理引擎的示例的框图;图11-13是根据实施例的执行单元的示例的框图;图14是根据实施例的图形流水线的示例的框图;图15A-15B是根据实施例的图形流水线编程的示例的框图;以及图16是根据实施例的图形软件架构的示例的框图。具体实施方式对于跨各种形状因子(例如,笔记本、游戏控制台、平板机、智能电话等)有效地缩放性能和/或所耗功率的瓦特(watt)的能量高效的图形逻辑会存在不断增长的需求。到更大能量效率(即,更低功率使用)的一个路径可以是提供可在给定形状因子内动态缩放以满足不同工作负载的操作要求的硬件。本文呈现的是基于对指令可调用以处理的操作数的考虑而动态地变更在执行某些指令中所要求的功率的实施例。图1示出了可用于本文所公开的实施例的示例中的图形处理单元(GPU)100的示例的框图。GPU100可包括媒体固定功能102、三维(3D)图形固定功能104、存储器接口106、可包括光栅化器108的切片公共块107、3级(L3)高速缓存109和三个子切片(slice)块110、112、114。子切片块110、112、114中的每一个可具有八个执行单元(EU)116以及一个取样器118。如在图1的插图中进一步所示出,给定EU116可包括多个不同的硬件资源(包括加法器、乘法器、舍入器单元、归一化器单元、二补数单元、位移器单元和逻辑块)。前述内容是非穷举性的列表,并且EU总体上也可包括为了节约说明篇幅起见未在图1中示出的其他硬件资源。EU116可计算数学和逻辑操作,同时取样器可执行纹理处理。对于一些3D工作负载和/或对于一些媒体工作负载可存在由EU116中的一个或多个执行的长内核(kernel),这可增加在上下文中EU的利用率。在一些实施例中,EU116中的一个或多个可以能够执行符合电气和电子工程师协会(IEEE)的浮点指令。此外,GPU100可用来执行通用应用以允许中央处理单元(CPU)与GPU100之间的负载平衡,这可进一步强调EU性能(包括相对于功率使用而言的EU性能)。在所解说的实施例中,针对每个子切片,可八倍地利用在EU116中的一个或多个中提供的功率节省。GPU100中的EU116中的一个或多个用来执行任务的指令集可由对应于各种数学和/或逻辑操作的少于大概100条(左右的)单条指令组成。操作的实现可通过其指令,并且指令一般在它们各自的硬件实现方面可以是彼此相异的。例如,图形指令集(ISA)利用大概72条指令。在这些指令中,某些指令比其他的更频繁地使用。因此,指令的重复使用对于功率使用可能有极大的影响。例如,在图形处理器中可能比其他指令更频繁使用的四条指令包括:用于将浮点数相乘的指令(下文中称为MUL);将浮点数相加的指令(下文中称为ADD);用于将两个浮点数进行比较的指令(下文中称为CMP);以及融合的乘-加指令(下文中称为FMA),在FMA中执行浮点数的乘法随后是加法,当计算完成时发生单次舍入。相对于图形处理单元(GPU),这四条指令也可在着色器中普遍地使用。因此,由四条指令的硬件实现捕获的功率节省可提供显著的总体功率节省。已经针对四条指令MUL、ADD、CMP和FMA中的每一条发布了各种标准。针对这四条和其他算术指令和/或操作的实现的被广泛接受的技术标准集是由IEEE提供的。例如,IEEE已经发布了浮点算术的标准集(IEEE标准754-2008,IEEE浮点算术标准),常称为“IEEE754标准”或仅“IEEE754”。IEEE754标准不规定特定硬件,而是关注可应用于各种各样的硬件实现的各种技术规则。一般而言,IEEE754和类似的标准向设计者提供在设计指令的微架构实现的硬件时的界限衡量(measureoflatitude)。然而IEEE754和类似的标准可能不一定定义实现的微架构。在用于MUL、ADD、CMP和/或FMA指令和/或操作的硬件实现的示例性实施例中,可用于处理一般情况的功率消耗的硬件逻辑和/或电路在普遍产生的特定情况中可能被禁用,在所述特定情况中,此类逻辑和/或电路对于提供由给定标准定义的正确结果(即,输出)可能不是必需的。特定(即,具体)情况可在操作数方面加以定义。在一些实施例中,给定标准可以是IEEE754-2008标准。然而,本文所讨论的实施例可提供也符合其他标准的输出。因此,可通过选择性地对于关闭特定情况和/或情境集可能不需要的逻辑和/或电路来节省功率。此外,可通过除了当某些逻辑和/或电路被使用时否则不向这些逻辑和/或电路供电来节省功率。可在MUL、ADD、CMP和/或FMA指令和/或操作中采用的硬件元件可随指令和/或实现而不同。通常,所述元件包括:1.用于将数字相加的加法器;2.用于将浮点数相乘的乘法器;3.用于将位位移的位移器;4.用于将结果重归一化并移除前导零的归一化器单元;5.用于执行舍入操作的舍入器单元;和/或6.用于将数字从符值(sign-magnitude)格式转换到二补数格式的二补数单元。这些元件中的任何一个都能以各种方式使用诸如门、触发器、计数器等的硬件而实现在硬件中。此外,这些元件可以实现为算术逻辑单元(ALU)的一部分。典型的ALU可包括用于处理加法、减法、幅度比较和其他操作的一个或多个逻辑和/或电路。在一些架构中,可提供单独的浮点单元(FPU)。在一些硬件架构中,乘法器可包括ALU。现在转向图2,示出了根据实施例的硬件布置的示例的框图,所述硬件布置可分析诸如操作数特性的操作条件以确定将在执行给定指令时将被提供功率的硬件资源。浮点操作数A和B各自可具有他们相应尾数的23位分数部分(二进制点的左边的前附1可能是隐式的)、8位指数和符号位。逻辑电路202可访问每一个23位分数部分、8位指数、符号位和指令204。此外,逻辑电路202可确定将使用哪些硬件资源。该确定生成可馈给解复用器单元本文档来自技高网...
计算机指令的降功率实现

【技术保护点】
一种用于在处理器中执行指令的方法,所述方法包括:确定第一操作条件集,在所述第一操作条件集中,将对第一逻辑电路集供电以供指令的执行以产生正确的输出;以及确定第二操作条件集,在所述第二操作条件集中,将对第二逻辑电路集供电以供所述指令的执行以产生正确的输出,其中所述第二逻辑电路集是所述第一集的真子集,并且其中所述指令的执行当在所述第二操作条件集下执行时比当在所述第一操作条件集下执行时要求更少的功率。

【技术特征摘要】
【国外来华专利技术】2014.12.26 US 14/583,3001.一种用于在处理器中执行指令的方法,所述方法包括:确定第一操作条件集,在所述第一操作条件集中,将对第一逻辑电路集供电以供指令的执行以产生正确的输出;以及确定第二操作条件集,在所述第二操作条件集中,将对第二逻辑电路集供电以供所述指令的执行以产生正确的输出,其中所述第二逻辑电路集是所述第一集的真子集,并且其中所述指令的执行当在所述第二操作条件集下执行时比当在所述第一操作条件集下执行时要求更少的功率。2.如权利要求1所述的方法,其特征在于,所述第一逻辑电路集包括加法器、位移器单元、乘法器、或二补数单元中的一个或多个。3.如权利要求1或2中任一项所述的方法,其特征在于,还包括:检查所述指令所操作的操作数以确定所述第一条件集和所述第二操作条件集中的哪一个优先。4.如权利要求1所述的方法,其特征在于,所述指令将两个浮点数相加。5.如权利要求1所述的方法,其特征在于,所述指令将两个浮点数相乘。6.如权利要求1所述的方法,其特征在于,所述指令将两个浮点数相比较。7.如权利要求1所述的方法,其特征在于,所述指令执行融合的乘-加指令。8.如权利要求1或4-7中任一项所述的方法,其特征在于,确定所述第二操作条件集包括:检查所述操作数以判定所述操作数中的一个或多个是否是零、无穷、反常值、单位值或者非有效数。9.如权利要求1或4-7中任一项所述的方法,其特征在于,判定是否在所述指令执行之后提供了正确的输出是参考所述指令的已知标准来判定的。10.如权利要求1所述的方法,其特征在于,确定所述第二操作条件集包括:比较至少两个操作数的幅度;以及如果所述幅度相差大于预定量,则在所述第二操作条件集下执行所述指令。11.如权利要求10所述的方法,其特征在于,确定所述第二操作条件集包括:考虑舍入条件。12.一种用于执行指令的处理器,所述处理器包括:逻辑,所述逻辑至少部分地实现在固定功能硬件中,用于:确定第一操作条件集,在所述第一操作条件集中,对第一逻辑电路集供电以供指令的执行以产生正确的输出;以及确定第二操作条件集,在所述第二操作条件集中,对第二逻辑电路集供电以供所述指令的执行以产生正确的输出,其中所述第二逻辑电路集是所述第一集的真子集,并且其中所述指令的执行当在所述第二操作条件集下执行时比当在所述第一操作条件集下执行时要求更少的功率。13.如权利要求12所述的处理器,其特征在于,所述第一逻辑电路集包括加法器、位移器单元、乘法器、或二补数单元中的一个或多个。14.如权利要求12-13中任一项所述的处理器,其特征在于,还包括...

【专利技术属性】
技术研发人员:M·K·杜耶J·F·加西亚帕博T·A·皮萨J·徐A·加格S·B·沙阿S·马余兰
申请(专利权)人:英特尔公司
类型:发明
国别省市:美国,US

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

1