【技术实现步骤摘要】
用于促进用于百亿亿次级架构的高能效计算的指令集架构政府权益的声明本专利技术是在由能源部授予的合同号H608115和B600747的政府支持下进行的。政府具有本专利技术的某些权益。
本专利技术的领域总体上涉及计算机处理器架构,更具体地涉及用于促进用于百亿亿次级架构的高能效计算的指令集架构。
技术介绍
百亿亿次级计算是指每秒能够执行至少一个exaFLOP(百亿亿次浮点运算)或能够执行百亿亿次计算的计算系统。百亿亿次级系统提出一系列复杂的挑战:数据移动能量可能超过计算的能量;以及使用常规指令集架构(ISA)来使应用能够完全利用百亿亿次级计算系统的能力不是直截了当的。附图说明在所附附图中以示例方式而非限制方式来图示本专利技术,在附图中,类似的附图标记指示类似的要素,其中:图1图示用于实现用于促进用于百亿亿次级架构的高能效计算的指令集架构的加速器架构的一个示例;图2是图示根据一些实施例的将多个加速器引擎策略性地集成到计算系统中的框图;图3是根据一些实施例的将集体(collectives)引擎(CENG)集成到核流水线中的框图;图4图示根据一些实施例的由所公开的指令集架构支持的一些集体操作的行为;图5图示根据一些实施例的用于约简状态机的状态流图;图6图示根据一些实施例的用于多播状态机的状态流图;图7图示根据一些实施例的由存储器引擎(MENG)逐线程地实现的状态机;图8图示根据实施例的示例性copystride(复制跨步)直接存储器访问(DMA)指令的行为;图9是图示根据实施例的来自向目标自定义指令格式的存储与在发布至加速器之前由转换器-整理器(translator-c ...
【技术保护点】
1.一种处理器,包括:多个加速器核,每个加速器核都具有对应的指令集架构ISA;取出电路,用于取出指定所述多个加速器核中的一个加速器核的一条或多条指令;解码电路,用于对一条或多条取出的指令进行解码;以及发布电路,用于:将一条或多条经解码的指令转换为与所指定的加速器核对应的ISA;将一个或多个经转换的指令整理为指令分组;以及将所述指令分组发布至所述所指定的加速器核;其中,所述多个加速器核包括存储器引擎MENG、集体引擎CENG、队列引擎QENG、和链管理单元CMU。
【技术特征摘要】
2018.03.29 US 15/940,7681.一种处理器,包括:多个加速器核,每个加速器核都具有对应的指令集架构ISA;取出电路,用于取出指定所述多个加速器核中的一个加速器核的一条或多条指令;解码电路,用于对一条或多条取出的指令进行解码;以及发布电路,用于:将一条或多条经解码的指令转换为与所指定的加速器核对应的ISA;将一个或多个经转换的指令整理为指令分组;以及将所述指令分组发布至所述所指定的加速器核;其中,所述多个加速器核包括存储器引擎MENG、集体引擎CENG、队列引擎QENG、和链管理单元CMU。2.如权利要求1所述的处理器,其中,所述多个加速器核中的每个加速器核被存储器映射到地址范围,并且其中,所述一条或多条指令是具有用于指定所述一个加速器核的地址的存储器映射的输入/输出MMIO指令。3.如权利要求1所述的处理器,进一步包括执行电路;其中,所述取出电路进一步取出不指定任何加速器核的另一指令;其中,所述一条或多条指令指定非阻挡型的所述一个加速器核;其中,所述解码电路进一步用于对所取出的所述另一指令进行解码;并且其中,所述执行电路用于执行经解码的所述另一指令而无需等待所述指令分组的执行完成。4.如权利要求1-3中的任一项所述的处理器,其中,与所述MENG对应的ISA包括双存储器指令,所述双存储器指令中的每条双存器指令包括以下一个:Dual_read_read、Dual_read_write、Dual_write_write、Dual_xchg_read、Dual_xchg_write、Dual_cmpxchg_read、Dual_cmpxchg_write、Dual_compare&read_read和Dual_compare&read_write。5.如权利要求1-3中的任一项所述的处理器,其中,与所述MENG对应的ISA包括直接存储器访问DMA指令,所述DMA指令指定源、目的地、算术操作和块尺寸,其中,所述MENG根据所述块尺寸将数据块从所指定的源复制到所指定的目的地,并且其中,所述MENG进一步在将所得到的数据复制到所指定的目的地之前对所述数据块的每个数据执行所述算术操作。6.如权利要求1-3中的任一项所述的处理器,其中,与所述CENG对应的ISA包括集体操作,所述集体操作包括约简、全部约简(约简到全部)、广播、聚集、分散、屏障、和并行前缀操作。7.如权利要求1-3中的任一项所述的处理器,其中,所述QENG包括具有任意队列类型的硬件管理的队列,其中,与所述QENG对应的ISA包括用于将数据添加到队列以及从所述队列移除数据的指令,并且其中,所述任意队列类型是后进先出LIFO、先进后出FILO和先进先出FIFO中的一种。8.如权利要求1-3中的任一项所述的处理器,其中,所述一条或多条指令的子集是链的部分,并且其中,所述CMU使每条链式指令的执行停止,直到在先的链式指令完成,并且其中,所述一条或多条指令中的其他指令能够并行地执行。9.如权利要求1-3中的任一项所述的处理器,进一步包括切换型总线结构,所述切换型总线结构用于耦合所述发布电路和所述多个加速器核,所述切换型总线结构包括路径,所述切换型总线结构具有多个并行通道并监测所述多个并行通道上的拥塞程度。10.如权利要求9所述的处理器,进一步包括入口网络接口、出口网络接口和分组劫持电路,所述分组劫持电路用于:通过将所述指令分组中所包含的地址与软件可编程劫持目标地址比较来判定是否劫持所述入口网络接口处的每个传入分组;将被判定为要被劫持的指令分组复制到劫持电路暂存器存储器;以及由劫持电路执行单元处理所存储的分组以对分组执行线速度原位分析、修改和拒绝。11.如权利要求1-3中的任一项所述的处理器,其中,所述多个加速器核被设置在多个处理器核中的一个或多个处理器核中,所述多个处理器核中的每个处理器核包括:根据修改-拥有-独占-共享-无效加转发MOESI+F高速缓存一致性协议被控制的高速缓存;其中,当高速缓存行在高速缓存中的至少一个高速缓存中是有效的时,对所述高速缓存行的存储器读取总是由高速缓存中的所述至少一个高速缓存服务而不是由存储器读取服务;并且其中,当处于修改状态的脏高速缓存行由于替换策略而被驱逐时,脏高速缓存行仅被写回到存储器。12.如权利要求11所述的处理器,其中,当处于拥有状态的高速缓存行由于替换策略而被驱逐时,如果在驱逐之前多于一个高速缓存具有所述高速缓存行的副本,则所述高速缓存行转变到不同高速缓存中的拥有状态,或者如果在驱逐之前仅一个高速缓存具有所述高速缓存行的副本,则所述高速缓存行转变到修改状态。13.如权利要求11所述的处理器,其中,当处于转发状态的高速缓存行由于替换策略而被驱逐时,如果在驱逐之前多于一个高速缓存具有所述高速缓存行的副本,则所述高速缓存行转变到不同高速缓存中的转发状态,或者如果在驱逐之前仅一个高速缓存具有所述高速缓存行的副本,则所述高速缓存行转变到独占状态。14.如权利要求11所述的处理器,进一步包括高速缓存控制电路,所述高速缓存控制电路用于监测多个核之间的一致性数据请求,并用于引起驱逐和高速缓存状态的转变,所述高速缓存控制电路包括高速缓存标签数组,所述高速缓存标签数组用于存储多个核的高速缓存中的每个高速缓存中的高速缓存行的高速缓存状态。15.一种系统,包括:存储器;多个加速器核,每个加速器核都具有对应的指令集架构ISA;用于取出指定所述多个加速器核中的一个加速器核的一条或多条指令的装置;用于对一条或多提取出的指令进行解码的装置;用于将一条或多条经解码的指令转换为与所指定的加速器核对应的ISA的装置;用于将一条或多条经转换的指令整理为指令分组的装置;以及用于将所述指令分组发布至所述所指定的加速器核的装置;其中,所述多个加速器核包括存储器引擎MENG、集体引擎CENG、队列引擎QENG、和链管理单元CMU。16.如权利要求15所述的系统:其中,所述多个加速器核中的每个加速器核被存储器映射到地址范围,并且其中,所述一条或多条指令是具有用于指...
【专利技术属性】
技术研发人员:J·B·弗莱曼,J·M·霍华德,P·苏瑞史,B·M·纳加桑达拉姆,S·达克希那莫尔泰,A·莫尔,R·帕洛夫斯基,S·简恩,P·尤里卡尔,A·M·西格哈里,S·哈尔,D·索马瑟科哈,D·S·邓宁,R·E·克利达特,W·P·格里芬,B·B·巴德维亚,I·B·甘涅夫,
申请(专利权)人:英特尔公司,
类型:发明
国别省市:美国,US
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。