Mastering Software Variant Explosion for GPU Accelerators

Mastering Software Variant Explosion for GPU Accelerators
复制标题

掌握 GPU 加速器的软件变体爆炸

DOI:
--
复制
发表时间:
2012
期刊:
Euro-Par Workshops
影响因子:
--
通讯作者:
Wieland Eckert
Wieland Eckert
中科院分区:
--
文献类型:
--
作者:
Richard Membarth;Frank Hannig;J. Teich;M. Körner;Wieland Eckert

文献摘要

被引文献

相似文献

以有效的方式将算法映射到目标硬件为算法设计人员带来了挑战。对于托管诸如图形卡之类的加速器的异质系统,这是特别的。尽管算法开发人员对应用领域有深刻的了解,但他们通常缺乏对加速器的基础硬件的详细见解,以利用所提供的处理能力。因此,本文介绍了一个基于规则的特定于域特异性优化引擎,用于为不同的图形处理单元(GPU)加速器生成最合适的代码变体。优化引擎依赖于从应用程序域和目标体系结构中融合的知识。优化引擎嵌入到一个框架中,该框架允许在特定于域的语言(DSL)中设计成像算法。我们表明,这允许对DSL中的算法进行一个常见的描述,并为不同的GPU加速器和诸如CUDA和OPENCL等目标语言选择最佳目标代码变体。
Mapping algorithms in an efficient way to the target hardware poses a challenge for algorithm designers. This is particular true for heterogeneous systems hosting accelerators like graphics cards. While algorithm developers have profound knowledge of the application domain, they often lack detailed insight into the underlying hardware of accelerators in order to exploit the provided processing power. Therefore, this paper introduces a rule-based, domain-specific optimization engine for generating the most appropriate code variant for different Graphics Processing Unit (GPU) accelerators. The optimization engine relies on knowledge fused from the application domain and the target architecture. The optimization engine is embedded into a framework that allows to design imaging algorithms in a Domain-Specific Language (DSL). We show that this allows to have one common description of an algorithm in the DSL and select the optimal target code variant for different GPU accelerators and target languages like CUDA and OpenCL.