Computer Generation of General Size Linear Transform Libraries

Computer Generation of General Size Linear Transform Libraries
复制标题

DOI:
10.1109/cgo.2009.33
复制
发表时间:
2009-03
期刊:
2009 International Symposium on Code Generation and Optimization
影响因子:
--
通讯作者:
Y. Voronenko;Frédéric de Mesmay;Markus Püschel
Y. Voronenko;Frédéric de Mesmay;Markus Püschel
中科院分区:
其他
文献类型:
--
作者:
Y. Voronenko;Frédéric de Mesmay;Markus Püschel

文献摘要

被引文献

相似文献

由于多处理器内核、向量指令集和深存储器层次结构,高性能库的开发变得异常困难。通常,在发布新平台时,必须重新实现和优化库。在本文中,我们将展示如何自动生成一般的输入大小库的域的线性变换。我们的生成器的输入是库应该使用的转换和递归算法的正式规范;输出是一个支持一般输入大小的库,是矢量化和多线程的,为内存层次结构提供了自适应机制,并且具有出色的性能,与最好的人类编写的库相当或更好。此外,我们表明,我们的库生成器,使各种定制,一个例子是生成Java库。
The development of high-performance libraries has become extraordinarily difficult due to multiple processor cores, vector instruction sets, and deep memory hierarchies. Often, the library has to be reimplemented and reoptimized, when a new platform is released. In this paper we show how to automatically generate general input-size libraries for the domain of linear transforms. The input to our generator is a formal specification of the transform and the recursive algorithms the library should use; the output is a library that supports general input size, is vectorized and multithreaded, provides an adaptation mechanism for the memory hierarchy, and has excellent performance, comparable to or better than the best human-written libraries. Further, we show that our library generator enables various customizations; one example is the generation of Java libraries.