The computational power increases over the past decades havegreatly enhanced the ability to simulate chemical reactions andunderstand ever more complex transformations. Tensor contractions are the fundamental computational building block of these simulations. These simulations have often been tied to one platform and restricted in generality by the interface provided to the user. The expanding prevalence of accelerators and researcher demands necessitate a more general approach which is not tied to specific hardware or requires contortion of algorithms to specific hardware platforms. In this paper we present COMET, a domain-specific programming language and compiler infrastructure for tensor contractions targeting heterogeneous accelerators. We present a system of progressive lowering through multiple layers of abstraction and optimization that achieves up to 1.98X speedup for 30 tensor contractions commonly used in computational chemistry and beyond.
翻译:在过去几十年中,计算能力的增长极大地增强了模拟化学反应和理解日益复杂的变异的能力。电锯收缩是这些模拟的基本计算基础。这些模拟往往与一个平台捆绑在一起,并受到提供给用户的界面的一般性限制。加速器和研究人员的日益普及要求采取更普遍的办法,而不是与特定硬件挂钩,或要求将算法与具体的硬件平台相调和。本文介绍了知识与技术伦理学委员会,这是一个针对不同加速器的超速收缩的域专用编程语言和编译器基础设施。我们提出了一个通过多层抽象和优化逐步降低系统,在计算化学及其他化学中常用的30个超速收缩达到1.98X速度。