Treffer: Autovesk: Automatic vectorized code generation from unstructured static kernels using graph transformations

Title:
Autovesk: Automatic vectorized code generation from unstructured static kernels using graph transformations
Publication Year:
2023
Collection:
Computer Science
Document Type:
Report Working Paper
Accession Number:
edsarx.2301.01018
Database:
arXiv

Weitere Informationen

Leveraging the SIMD capability of modern CPU architectures is mandatory to take full benefit of their increasing performance. To exploit this feature, binary executables must be explicitly vectorized by the developers or an automatic vectorization tool. This why the compilation research community has created several strategies to transform a scalar code into a vectorized implementation. However, the majority of the approaches focus on regular algorithms, such as affine loops, that can be vectorized with few data transformations. In this paper, we present a new approach that allow automatically vectorizing scalar codes with chaotic data accesses as long as their operations can be statically inferred. We describe how our method transforms a graph of scalar instructions into a vectorized one using different heuristics with the aim of reducing the number or cost of the instructions. Finally, we demonstrate the interest of our approach on various computational kernels using Intel AVX-512 and ARM SVE.
Comment: Preprint