TTC: A high-performance Compiler for Tensor Transpositions

03/07/2016
by   Paul Springer, et al.
0

We present TTC, an open-source parallel compiler for multidimensional tensor transpositions. In order to generate high-performance C++ code, TTC explores a number of optimizations, including software prefetching, blocking, loop-reordering, and explicit vectorization. To evaluate the performance of multidimensional transpositions across a range of possible use-cases, we also release a benchmark covering arbitrary transpositions of up to six dimensions. Performance results show that the routines generated by TTC achieve close to peak memory bandwidth on both the Intel Haswell and the AMD Steamroller architectures, and yield significant performance gains over modern compilers. By implementing a set of pruning heuristics, TTC allows users to limit the number of potential solutions; this option is especially useful when dealing with high-dimensional tensors, as the search space might become prohibitively large. Experiments indicate that when only 100 potential solutions are considered, the resulting performance is about 99 exhaustive search.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
04/14/2017

HPTT: A High-Performance Tensor Transposition C++ Library

Recently we presented TTC, a domain-specific compiler for tensor transpo...
research
07/05/2016

TTC: A Tensor Transposition Compiler for Multiple Architectures

We consider the problem of transposing tensors of arbitrary dimension an...
research
05/18/2017

Spin Summations: A High-Performance Perspective

Besides tensor contractions, one of the most pronounced computational bo...
research
07/01/2016

Design of a high-performance GEMM-like Tensor-Tensor Multiplication

We present "GEMM-like Tensor-Tensor multiplication" (GETT), a novel appr...
research
02/24/2021

Learning to Make Compiler Optimizations More Effective

Because loops execute their body many times, compiler developers place m...
research
10/01/2021

An Attempt to Generate Code for Symmetric Tensor Computations

This document describes an attempt to develop a compiler-based approach ...
research
11/29/2021

An Asymptotic Cost Model for Autoscheduling Sparse Tensor Programs

While loop reordering and fusion can make big impacts on the constant-fa...

Please sign up or login with your details

Forgot password? Click here to reset