[发明专利]软件性能优化方法、可存储介质、计算机、计算机程序有效

专利信息
申请号: 201711499169.6 申请日: 2017-12-29
公开(公告)号: CN108197027B 公开(公告)日: 2021-07-16
发明(设计)人: 唐华;蔡智 申请(专利权)人: 广州景派科技有限公司
主分类号: G06F11/36 分类号: G06F11/36
代理公司: 北京众合诚成知识产权代理有限公司 11246 代理人: 夏艳
地址: 510663 广东省广州市高新技术产业*** 国省代码: 广东;44
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 软件 性能 优化 方法 存储 介质 计算机 程序
【说明书】:

本发明属于计算机软件技术领域,公开了一种软件性能优化方法、可存储介质、计算机、计算机程序,二进制代码转换成中间语言,提取程序依赖关系;没有依赖关系的语句归于一类,得到多个行并行执行运行组;不同的运行组划分到不同的运算组件上,重新生成二进制代码。本发明能够将串行二进制程序转换为并行二进制程序,充分利用高性能计算设备的并行计算能力,提到程序运行效率。本发明提高了软件的并行运行能力,同时提高了在高性能硬件上的性能。

技术领域

本发明属于计算机软件技术领域,尤其涉及一种软件性能优化方法、可存储介质、计算机、计算机程序。

背景技术

没有相关的专利

存在一类相关的技术,即循环并行化。该技术把单个循环拆成多个可以独立运行的循环,然后在多个运行组件上并行的运行这些循环,达到提高循环运行效率的目的。

综上所述,现有技术存在的问题是:循环并行化只关注循环,而对于循环以外的程序部分就没有处理。

发明内容

针对现有技术存在的问题,本发明提供了一种软件性能优化方法、可存储介质、计算机、计算机程序。

本发明是这样实现的,一种软件性能优化方法,所述软件性能优化方法包括:

第一步,二进制代码转换成中间语言,提取程序依赖关系;

第二步,没有依赖关系的语句归于一类,得到多个行并行执行运行组;

第三步,不同的运行组划分到不同的运算组件上,重新生成二进制代码。

进一步,所述软件性能优化方法具体包括:

步骤一,将二进制代码翻译成为中间语言;

步骤二,从中间语言代码中提取程序依赖关系,包括控制流依赖和数据流依赖并形成程序依赖图;

步骤三,将没有依赖关系的语句分为不同的组;

步骤四,二进制重写,经过分组处理的语句写入并行执行单元中,生成并行二进制文件。

进一步,所述步骤三的语句分组具体包括:

第一步,搜索程序依赖图,找到所有的叶子节点;

第二步,根据程序依赖图,从当前运行组节点向下回溯,直到分叉节点为止,并将回溯到的节点划分到同一个运行组;

第三步,在每个分叉点位置判断是否其依赖的语句全部执行完,如果不是则等待,如果是则将分叉点的状态设置为就绪,并把分叉点归到一个新的运行组;

第四步,判断当前节点是否为程序依赖图的根节点,如果不是,则返回第二步,如果是,则分组完毕。

本发明的另一目的在于提供一种所述软件性能优化方法的软件性能优化系统,所述软件性能优化系统包括:

翻译模块,用于将二进制代码翻译成为中间语言;

提取模块,用于从中间语言代码中提取程序依赖关系;

分组模块,用于将没有依赖关系的语句分为不同的组;

重写模块,用于经过分组处理的语句写入并行执行单元中,生成并行二进制文件。

本发明的另一目的在于提供一种实现所述软件性能优化方法的计算机程序。

本发明的另一目的在于提供一种应用所述软件性能优化方法的计算机。

本发明的另一目的在于提供一种存储有所述软件性能优化方法的可存储介质,所述可存储介质为ROM只读存储器、RAM可读写存储器、EPROM可编程存储器。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于广州景派科技有限公司,未经广州景派科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201711499169.6/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top