指令块处理方法及装置制造方法及图纸

技术编号:14410366 阅读:95 留言:0更新日期:2017-01-11 20:50
提供了指令块处理方法及装置。所述方法包括:处理器确定X个指令块中的第一指令块,所述第一指令块被执行读操作的频率大于所述X个指令块中其他指令块中的每个指令块被执行读操作的频率,所述X个指令块被保存在第一存储器集合中的N个存储器的每个存储器中,N是正整数,X是大于1的整数;所述处理器将所述第一指令块保存在第二存储器集合中的M个存储器的每个存储器中,所述第一阈值大于0,M是正整数,所述第一存储器集合和所述第二存储器集合的交集为空集合,其中,所述M个存储器的带宽大于所述N个存储器的带宽。上述方案有助于减少指令对存储空间的占用。

【技术实现步骤摘要】

本专利技术涉及计算机
,尤其涉及指令块处理方法及装置
技术介绍
中央处理单元(centralprocessingunit,CPU)可以通过超大规模集成电路(very-large-scaleintegration,VLSI)实现。CPU在计算机中可以执行运算和控制功能。CPU可以用于解析计算机指令以及处理计算机中的数据。为了提高CPU的处理性能,通常采用高速缓存(cache)机制。包含cache的CPU通过总线与存储器耦合。CPU需要获取数据时,CPU的处理核可以先查找高速缓存。当高速缓存没有命中(cachemiss)时CPU的处理核再查找存储器。在cachemiss出现的频率较低的情况下,cache机制可以为CPU提供较高的处理性能。然而,有的场景中,例如网络通信场景,cachemiss出现的频率较高。上述场景中,CPU的处理性能较低。举例来说,对于网络装置(例如,路由器,交换机,存储设备、服务器或者无线设备),要求使用高性能的处理器。例如使用网络处理器。网络处理器可以采用众核架构。每个核可以支持多硬件线程。例如,使用网络装置实现报文转发业务。所述报文转发业务可能需要用到多个指令块(instructionblock)。每个指令块可以是实现功能的指令序列。例如,指令块可以是微码函数或者C语言函数。指令块存储在存储器中。处理器可以通过访问存储器获得指令块。具体实现时,所述多个指令块可以存储在一个存储器中。所述处理器可以通过串行的方式访问所述存储器从而获取所述多个指令块。为提高处理器的处理性能,也可以将所述多个指令块保存在多个存储器中。每个存储器都保存所述多个指令块。所述处理器可以通过并行的方式访问所述多个存储器从而获取所述多个指令块。上述技术方案存在以下问题:为了使得处理器能够实现一定的处理性能,增加了指令对存储空间的占用。
技术实现思路
有鉴于此,本专利技术实施例提供了一种指令块处理方法及装置,在处理器能够实现一定的处理性能的情况下,减少了指令对存储空间的占用。本专利技术实施例提供的技术方案如下。第一方面,提供了一种指令块处理方法,包括:处理器确定X个指令块中的第一指令块,所述第一指令块被执行读操作的频率大于所述X个指令块中其他指令块中的每个指令块被执行读操作的频率,所述X个指令块被保存在第一存储器集合中的N个存储器的每个存储器中,N是正整数,X是大于1的整数;以及所述处理器将所述第一指令块保存在第二存储器集合中的M个存储器的每个存储器中,M是正整数,所述第一存储器集合和所述第二存储器集合的交集为空集合,其中,所述M个存储器的带宽大于所述N个存储器的带宽。在第一方面的第一种可能的实现方式中,所述方法还包括:所述处理器将所述第一指令块保存在所述第二存储器集合中的所述M个存储器的每个存储器中具体包括:所述处理器在所述N个存储器中所述第一存储器的使用情况大于或等于第一阈值时,将所述第一指令块保存在所述第二存储器集合中的所述M个存储器的每个存储器中,所述第一阈值大于0。结合第一方面的第一种可能的实现方式,第一方面的第二种可能的实现方式中,所述方法还包括:所述处理器在所述N个存储器中所述第一存储器的使用情况大于或等于第一阈值时,将所述第一指令块保存在所述第二存储器集合中的所述M个存储器的每个存储器中具体包括:所述处理器在所述N个存储器中所述第一存储器的使用情况大于或等于所述第一阈值以及所述M个存储器中第二存储器的使用情况小于第二阈值时,将所述第一指令块保存在所述第二存储器集合中的所述M个存储器的每个存储器中,所述第二阈值大于0。结合第一方面的第一种可能的实现方式,第一方面的第三种可能的实现方式中,在所述处理器将所述第一指令块保存在所述第二存储器集合中的所述M个存储器的每个存储器中之前,所述方法还包括:所述处理器确定Y个指令块中的第二指令块,所述第二指令块被执行读操作的频率小于所述Y个指令块中其他指令块中的每个指令块被执行读操作的频率,所述Y个指令块被保存在所述第二存储器集合中的所述M个存储器的每个存储器中,Y为大于1的整数;以及所述处理器在所述M个存储器中第二存储器的使用情况大于或等于第二阈值时,将所述第二指令块保存在所述第一存储器集合中的所述N个存储器的每个存储器中,所述第二阈值大于0。结合第一方面,或第一方面的上述任意一种可能的实现方式,第一方面的第四种可能的实现方式中,在所述处理器将所述第一指令块保存在所述第二存储器集合中的所述M个存储器的每个存储器中之后,所述方法还包括:所述处理器删除所述N个存储器中每个存储器保存的所述第一指令块。结合上述第一方面的第三种可能的实现方式,第一方面的第五种可能的实现方式中,在所述处理器将所述第二指令块保存在所述第一存储器集合中的所述N个存储器的每个存储器中之后,所述方法还包括:所述处理器删除所述M个存储器中每个存储器保存的所述第二指令块。结合第一方面,或第一方面的上述任意一种可能的实现方式,第一方面的第六种可能的实现方式中,所述X个指令块中每个指令块包含计数指令,所述处理器确定所述X个指令块中的所述第一指令块之前,所述方法还包括:所述处理器通过执行所述X个指令块中每个指令块中包含的所述计数指令确定所述X个指令块中每个指令块被执行读操作的数量;以及所述处理器根据所述X个指令块中每个指令块被执行读操作的数量确定所述X个指令块中每个指令块被执行读操作的频率。第二方面,提供了一种处理器,包括:第一确定单元,用于确定X个指令块中的第一指令块,所述第一指令块被执行读操作的频率大于所述X个指令块中其他指令块中的每个指令块被执行读操作的频率,所述X个指令块被保存在第一存储器集合中的N个存储器的每个存储器中,N是正整数,X是大于1的整数;以及执行单元,用于将所述第一确定单元确定的所述第一指令块保存在第二存储器集合中的M个存储器的每个存储器中,M是正整数,所述第一存储器集合和所述第二存储器集合的交集为空集合,其中,所述M个存储器的带宽大于所述N个存储器的带宽。在第二方面的第一种可能的实现方式中,所述执行单元具体用于:在所述N个存储器中所述第一存储器的使用情况大于或等于第一阈值时,将所述第一指令块保存在所述第二存储器集合中的所述M个存储器的每个存储器中,所述第一阈值大于0。结合第二方面的第一种可能的实现方式,第二方面的第二种可能的实现方式中,所述执行单元具体用于:在所述N个存储器中所述第一存储器的使用情况大于或等于所述第一阈值以及所述M个存储器中第二存储器的使用情况小于第二阈值时,将所述第一指令块保存在所述第二存储器集合中的所述M个存储器的每个存储器中,所述第二阈值大于0。结合第二方面的第一种可能的实现方式,第二方面的第三种可能的实现方式中,所述处理器还包括:第二确定单元,用于在所述执行单元将所述第一指令块保存在所述第二存储器集合中的所述M个存储器的每个存储器中之前,确定Y个指令块中的第二指令块,所述第二指令块被执行读操作的频率小于所述Y个指令块中其他指令块中的每个指令块被执行读操作的频率,所述Y个指令块被保存在所述第二存储器集合中的所述M个存储器的每个存储器中,Y为大于1的整数;所述执行单元,还用于在所述M个存储器中第二存储器的使用情况大本文档来自技高网
...
指令块处理方法及装置

【技术保护点】
一种指令块处理方法,其特征在于,所述方法包括:处理器确定X个指令块中的第一指令块,所述第一指令块被执行读操作的频率大于所述X个指令块中其他指令块中的每个指令块被执行读操作的频率,所述X个指令块被保存在第一存储器集合中的N个存储器的每个存储器中,N是正整数,X是大于1的整数;以及所述处理器将所述第一指令块保存在第二存储器集合中的M个存储器的每个存储器中,M是正整数,所述第一存储器集合和所述第二存储器集合的交集为空集合,其中,所述M个存储器的带宽大于所述N个存储器的带宽。

【技术特征摘要】
1.一种指令块处理方法,其特征在于,所述方法包括:处理器确定X个指令块中的第一指令块,所述第一指令块被执行读操作的频率大于所述X个指令块中其他指令块中的每个指令块被执行读操作的频率,所述X个指令块被保存在第一存储器集合中的N个存储器的每个存储器中,N是正整数,X是大于1的整数;以及所述处理器将所述第一指令块保存在第二存储器集合中的M个存储器的每个存储器中,M是正整数,所述第一存储器集合和所述第二存储器集合的交集为空集合,其中,所述M个存储器的带宽大于所述N个存储器的带宽。2.根据权利要求1所述的方法,其特征在于,所述处理器将所述第一指令块保存在所述第二存储器集合中的所述M个存储器的每个存储器中具体包括:所述处理器在所述N个存储器中所述第一存储器的使用情况大于或等于第一阈值时,将所述第一指令块保存在所述第二存储器集合中的所述M个存储器的每个存储器中,所述第一阈值大于0。3.根据权利要求2所述的方法,其特征在于,所述处理器在所述N个存储器中所述第一存储器的使用情况大于或等于第一阈值时,将所述第一指令块保存在所述第二存储器集合中的所述M个存储器的每个存储器中具体包括:所述处理器在所述N个存储器中所述第一存储器的使用情况大于或等于所述第一阈值以及所述M个存储器中第二存储器的使用情况小于第二阈值时,将所述第一指令块保存在所述第二存储器集合中的所述M个存储器的每个存储器中,所述第二阈值大于0。4.根据权利要求2所述的方法,其特征在于,在所述处理器将所述第一指令块保存在所述第二存储器集合中的所述M个存储器的每个存储器中之前,所述方法还包括:所述处理器确定Y个指令块中的第二指令块,所述第二指令块被执行读操作的频率小于所述Y个指令块中其他指令块中的每个指令块被执行读操作的频率,所述Y个指令块被保存在所述第二存储器集合中的所述M个存储器的每个存储器中,Y为大于1的整数;以及所述处理器在所述M个存储器中第二存储器的使用情况大于或等于第二阈值时,将所述第二指令块保存在所述第一存储器集合中的所述N个存储器的每个存储器中,所述第二阈值大于0。5.根据权利要求1-4中任一项所述的方法,其特征在于,在所述处理器将所述第一指令块保存在所述第二存储器集合中的所述M个存储器的每个存储器中之后,所述方法还包括:所述处理器删除所述N个存储器中每个存储器保存的所述第一指令块。6.根据权利要求4所述的方法,其特征在于,在所述处理器将所述第二指令块保存在所述第一存储器集合中的所述N个存储器的每个存储器中之后,所述方法还包括:所述处理器删除所述M个存储器中每个存储器保存的所述第二指令块。7.根据权1至6中任一所述的方法,其特征在于,所述X个指令块中每个指令块包含计数指令,所述处理器确定所述X个指令块中的所述第一指令块之前,所述方法还包括:所述处理器通过执行所述X个指令块中每个指令块中包含的所述计数指令确定所述X个指令块中每个指令块被执行读操作的数量;以及所述处理器根据所述X个指令块中每个指令块被执行读操作的数量确定所述X个指令...

【专利技术属性】
技术研发人员:王小忠龚钧郑远明
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:广东;44

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

1