李玉祥
- 作品数:3 被引量:23H指数:3
- 供职机构:中国科学院计算技术研究所更多>>
- 发文基金:国家重点基础研究发展计划国家高技术研究发展计划更多>>
- 相关领域:自动化与计算机技术更多>>
- 面向非多媒体程序的SIMD向量化算法的研究及改进被引量:6
- 2009年
- 利用微处理器的多媒体扩展对非多媒体程序的向量化已成为提高程序性能的一个重要手段,然而目前几乎所有的商业编译器对非多媒体程序的向量化的结果,都无法说明其编译器有效的向量能力.本文通过分析典型的非多媒体程序--SPECCPU2000浮点程序,归纳出非多媒体程序的SIMD向量化特征,并依此提出局部数据重组的向量化方法、针对外层循环的向量化方法、部分语句SLP的向量化方法几种新的向量化方法和相关的向量化优化技术.通过对比Intel编译器对SPECCPU2000的向量化性能测试,可以发现本文提出的改进方法有效的提高了程序的向量化.
- 李玉祥施慧陈莉
- 关键词:向量化数据重组SIMD
- 面向向量化的局部数据重组被引量:10
- 2009年
- 目前,利用微处理器的多媒体扩展对非多媒体程序的向量化已成为提高程序性能的一个重要手段.然而,和多媒体程序相比,非多媒体程序存在大量的非连续和非对齐的数据引用方式,严重影响程序的向量化发掘和向量化性能.提出一种新的向量化方法—基于局部数据重组的向量化技术(.通过改变局部数据的布局,将循环中不连续的数据引用变为连续的数据引用,进而完成对循环的向量化;并对数据引用作对齐分析和对齐优化,从而提高程序的向量化性能.以SPEC CPU2000浮点测试集为例,该方法不仅可以向量化对于ICC编译器无法向量化的程序,而且对这些程序都有很好的性能提升,在当前的测试环境下某些程序性能最高可提高241.6%.
- 李玉祥施慧陈莉
- 关键词:向量化数据重组SIMD
- 带类型恢复的编译器源源翻译技术被引量:7
- 2010年
- 源源翻译是使编译器的分析和优化可重定向的一种重要方式.它被广泛用来支持并行语言扩展或者各种体系结构无关的优化,并且可以帮助程序员进行正确性或者性能的调试.在多核/众核时代,程序分析和优化倾向于让用户更多地参与,这种平台无关而且用户友好的代码生成方式也越来越受到欢迎.在简单的编译器中添加源源翻译的支持很容易,但在实现了复杂的程序分析和激进的优化的编译器中,却很少有编译器提供健壮的源源翻译支持.优化对程序结构的改变是造成翻译困难的首要原因.结合大量出错实例对优化给源源翻译带来的困难进行分析,提出了一套基于类型恢复的翻译技术,并在Open64编译器中实现了这种方法.通过supertest和spec2000测试集的测试,验证了这种方法对源源翻译的健壮性有很大改善.该方法的实现模块集成在源源翻译器内,与编译器各种分析优化模块独立,所以该方法容易移植到其他编译器中.
- 米伟李玉祥陈莉冯晓兵张兆庆
- 关键词:编译器