一种新型自动向量化编译算法  

A New Algorithm for Auto-Vectorization Compilation

在线阅读下载全文

作  者:吕鹏伟[1] 刘从新[1] 沈绪榜[1] 

机构地区:[1]西安微电子技术研究所,陕西西安710065

出  处:《武汉大学学报(理学版)》2016年第5期456-463,共8页Journal of Wuhan University:Natural Science Edition

基  金:核高基重大专项(2014ZX01020-003);国家自然科学基金项目资助(61136002);国家863计划资助项目(2015AA7015028)

摘  要:SIMD(single instruction multiple data)体系结构在高性能计算与嵌入式多媒体计算中扮演着重要的角色,对于SIMD指令的自动向量化编译技术是当前编译领域的研究热点.本文基于超字并行(super-word level parallelism,SLP)算法提出了一种新的自动向量化算法GSLP(global super-word level parallelism),该算法分为两部分:语句分组和语句调度.语句分组从全局出发分析超字复用信息,在语句分组的过程中,充分挖掘基本块的直接或者间接的超字复用信息,提高基本块内语句并行操作的机会;语句调度对基本块内的所有语句进行调度并调整超字内部单字(Single-word)数据的组织顺序,使生成的代码中打包/解包(pack/unpack)操作的数量降到最低.使用16个测试程序对GSLP算法进行测试,试验结果表明该算法使打包/解包操作的数量平均减少了41.6%,与SLP算法所产生的加速相比平均提高了4.7%.The SIMD(single instruction multiple data)architecture plays an important role in high performance and embedded multi-media computing.Auto-vectorization compilation for SIMD instruction is the current hot research topic in the field of compilation.This paper proposed a new auto-vectorization algorithm GLSP(global super-word level parallelism).Our algorithm mainly consists of two parts,statement grouping and statement scheduling.Statement grouping analyzes the reuse information of super-word from the global situation,makes full use of the opportunities on direct or indirect super-word reuse for basic blocks,and improves the opportunities on parallel operation of statements in a basic block.Statement scheduling reduces the number of packing and unpacking operation to minimum in generated code by scheduling all statements in a basic block and adjusts the organization order of single word in a super-word.A test including 16 test benches has been applied on GLSP algorithm.The experimental result showed that,compared with SLP algorithm,it has an average 41.6% reduction on pack/unpack operations,and an average 4.7%improvement on speed-up.

关 键 词:SIMD指令 编译技术 自动向量化 超字并行 超字复用 

分 类 号:TP314[自动化与计算机技术—计算机软件与理论]

 

参考文献:

正在载入数据...

 

二级参考文献:

正在载入数据...

 

耦合文献:

正在载入数据...

 

引证文献:

正在载入数据...

 

二级引证文献:

正在载入数据...

 

同被引文献:

正在载入数据...

 

相关期刊文献:

正在载入数据...

相关的主题
相关的作者对象
相关的机构对象