[发明专利]提升CPU并行性能的方法及装置和电子设备有效
| 申请号: | 201910175628.8 | 申请日: | 2019-03-08 |
| 公开(公告)号: | CN110032407B | 公开(公告)日: | 2020-12-22 |
| 发明(设计)人: | 马凌;周伟;何昌华 | 申请(专利权)人: | 创新先进技术有限公司 |
| 主分类号: | G06F9/448 | 分类号: | G06F9/448;G06F8/41 |
| 代理公司: | 北京博思佳知识产权代理有限公司 11415 | 代理人: | 林祥 |
| 地址: | 开曼群岛大开曼岛*** | 国省代码: | 暂无信息 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 提升 cpu 并行 性能 方法 装置 电子设备 | ||
1.一种提升CPU并行性能的方法,所述方法包括:
获取分配到同一CPU核心的相同类型的数据请求;
确定获取到的数据请求的请求个数;
如果所述请求个数大于或者等于并行数,所述CPU核心获取对应所述并行数的可执行代码并执行;其中,所述并行数为所述CPU提供的最大并行线程的数量;所述可执行代码为预先根据并行数编译后链接而成的代码程序。
2.根据权利要求1所述的方法,所述方法还包括:
如果所述请求个数小于并行数,并且获取次数小于并行数,执行所述获取分配到同一CPU核心的相同类型的数据请求;其中,所述获取次数为获取数据请求的次数。
3.根据权利要求1所述的方法,所述方法还包括:
如果所述请求个数小于并行数但大于0,并且获取次数不小于并行数,所述CPU核心获取对应所述请求个数的可执行代码并执行;其中,所述获取次数为获取数据请求的次数。
4.根据权利要求3所述的方法,所述方法还包括:
如果所述请求个数等于0,并且所述获取次数不小于并行数,执行所述获取分配到同一CPU核心的相同类型的数据请求。
5.根据权利要求1所述的方法,在所述预先根据并行数编译过程中:
如果并行数为2,代码00和代码10的跳转指令都是向上跳转,执行如下步骤:
步骤31:执行代码00;
步骤32:执行代码10;
步骤33:设置标识位设为第一标识;
步骤34:根据代码00的执行结果判断是否需要继续执行代码00;如果需要执行步骤35,如果不需要执行步骤36;
步骤35:再次执行代码00,并将标识位设为第二标识,执行步骤36;
步骤36:根据代码10的执行结果判断是否需要继续执行代码10;如果需要执行步骤37,如果不需要执行步骤38;
步骤37:再次执行代码10,并将标识位设为第二标识,执行步骤38;
步骤38:判断标识位是否第一标识,如果不是,重复执行步骤33;直到标识位为第一标识时,循环结束。
6.根据权利要求5所述的方法,根据代码的执行结果判断是否需要再次执行代码,具体包括:
如果代码的执行结果符合阈值,确定需要再次执行代码;
如果代码的执行结果不符合阈值,确定不需要再次执行代码。
7.根据权利要求1所述的方法,在所述预先根据并行数编译过程中:
如果并行数为2,代码00和代码10的跳转指令都是向下跳转,执行如下步骤:
步骤41:执行代码00;
步骤42:执行代码00的跳转指令00,如果不跳转执行步骤43;如果跳转执行步骤44;
步骤43:顺序执行指令,即执行步骤44;
步骤44:执行代码10;
步骤45:执行代码10的跳转指令10,如果不跳转执行步骤46;如果跳转执行步骤47;
步骤46:顺序执行指令,即执行步骤47;
步骤47:执行下一代码01。
8.一种提升CPU并行性能的装置,所述装置包括:
获取单元,获取分配到同一CPU核心的相同类型的数据请求;
确定单元,确定获取到的数据请求的请求个数;
执行单元,如果所述请求个数大于或者等于并行数,所述CPU核心获取对应所述并行数的可执行代码并执行;其中,所述并行数为所述CPU提供的最大并行线程的数量;所述可执行代码为预先根据并行数编译后链接而成的代码程序。
9.一种电子设备,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为上述权利要求1-7中任一项所述的方法。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于创新先进技术有限公司,未经创新先进技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910175628.8/1.html,转载请声明来源钻瓜专利网。





