[发明专利]用于从代码语句生成SIMD代码的方法和系统在审

专利信息
申请号: 201410698631.5 申请日: 2014-11-27
公开(公告)号: CN104731556A 公开(公告)日: 2015-06-24
发明(设计)人: E·阿米里;C·M·巴顿;D·M·帕梅洛;R·希尔韦拉 申请(专利权)人: 国际商业机器公司
主分类号: G06F9/30 分类号: G06F9/30
代理公司: 北京市中咨律师事务所 11247 代理人: 于静;张亚非
地址: 美国*** 国省代码: 美国;US
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 用于 代码 语句 生成 simd 方法 系统
【说明书】:

技术领域

本公开一般地涉及用于代码生成的软件开发工具,更具体地说,涉及编译代码以便在针对单指令多数据(SIMD)执行配置的机器上执行。

背景技术

SIMD配置的计算机包括多个处理元件,它们同时针对多个数据点执行相同的操作。SIMD处理元件通常用于同时对多组数值进行相加或相乘,以便实现多媒体编码和呈现以及科学应用。在没有编译器支持的情况下使用SIMD指令实现算法可能需要用户知道有关数据对齐、体系架构特定指令集和SIMD寄存器大小的限制。编译器可以允许用户通过从用户的标量代码生成支持SIMD的代码,利用SIMD处理元件的速度。

发明内容

本公开的各实施例公开一种用于从包括非同构代码语句的代码语句生成SIMD代码的方法、计算机程序产品和系统。一个或多个处理器接收多个代码语句,每个代码语句具有采用相应操作符顺序的一个或多个操作符。每个操作符具有类型和关联的操作数。所述多个代码语句中的至少两个代码语句在不同操作符顺序位置中具有相同类型的操作符。所述一个或多个处理器在所述至少两个代码语句的每一个中,针对所述相同类型的操作符标识第一操作符顺序位置。对于所述至少两个代码语句的每一个,所述一个或多个处理器针对操作符顺序位置在所述第一操作符顺序位置之前的操作符及其关联的操作数生成代码。所述一个或多个处理器至少基于所标识的第一操作符顺序位置、对应的操作符类型,以及与所标识的操作符顺序位置处的操作符类型关联的操作数,生成SIMD代码。

附图说明

从以下将结合附图阅读的对本发明的示例性实施例的详细说明,本发明的特性和优点将变得显而易见。附图的各种特性不按比例,因为各图是为了清晰起见,促进所属技术领域的技术人员结合详细说明理解本发明。在附图中:

图1示出显示根据本公开的一个实施例的标量代码语句的数据并行表示和标量代码语句的数据并行机会的示例性包;

图2示出根据本公开的一个实施例的SIMD优化编译器环境的功能框图;

图3是示出根据本公开的一个实施例的有序选择准备例程的操作的流程图;

图4是根据本公开的一个实施例的示例性包的示意图;

图5a和5b是示出根据本公开的一个实施例的选择例程的操作的流程图;

图6-14示出根据本公开的一个实施例的用于从数据并行机会中选择操作符匹配以便优化的包的示例性处理;

图15示出根据本公开的一个实施例的SIMD优化编译器环境的计算设备的组件的框图。

具体实施方式

在计算中,代码的基本块是程序中具有仅一个入口点和仅一个出口点的代码部分。编译器通常将程序分解为其基本块,作为生成编译代码的第一步。生成支持SIMD的代码的典型编译器从标量代码的基本块中的“同构”代码模式生成支持SIMD的代码。当代码的基本块中的多个代码语句或同构代码语句全部按照相同顺序在多个代码语句中包含相同操作符(例如乘法),并且将操作符应用于存储器相邻操作数时,存在同构代码模式。某些编译器可以通过剥离和展开循环,将循环中的代码主体分解为基本块,作为一种用于在展开的循环主体中标识同构代码语句的方式。这些同构代码语句可以表示数据并行机会,以便编译器使用SIMD指令进行优化。

本公开的各实施例可以允许编译器扩展数据并行机会以便进行SIMD优化。各种实施例可以有利地优化来自非同构代码语句以及同构代码语句的代码,以便生成SIMD指令。本公开的各实施例可以使用标量代码的数据并行表示(以下称为“包(pack)”),以便生成支持SIMD的代码。不同于仅打包来自同构标量代码的代码语句的典型编译器,本公开的某些实施例可以打包同构和非同构语句两者的数据并行表示。

图1示出显示根据本公开的一个实施例的同构和非同构标量代码语句110的数据并行表示以及标量代码语句110的数据并行机会190的示例性包180。如下面详细描述的那样,包创建器210从标量代码语句110创建包180和数据并行机会190。

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

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

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

×

专利文献下载

说明:

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

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

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

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

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

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

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

钻瓜专利网在线咨询

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

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