Vapor SIMD: Auto-Vectorize Once, Run Everywhere

Dorit Nuzman 1 Sergei Dyshel 1 Erven Rohou 2 Ira Rosen 1 Kevin Williams 2 David Yuste 2 Albert Cohen 3 Ayal Zaks 1
2 ALF - Amdahl's Law is Forever
Inria Rennes – Bretagne Atlantique , IRISA-D3 - ARCHITECTURE
3 ALCHEMY - Architectures, Languages and Compilers to Harness the End of Moore Years
LRI - Laboratoire de Recherche en Informatique, UP11 - Université Paris-Sud - Paris 11, CNRS - Centre National de la Recherche Scientifique : UMR8623, Inria Saclay - Ile de France
Abstract : Just-in-Time (JIT) compiler technology offers portability while facilitating target- and context-specific specialization. Single-Instruction-Multiple-Data (SIMD) hardware is ubiquitous and markedly diverse, but can be difficult for JIT compilers to efficiently target due to resource and budget constraints. We present our design for a synergistic auto-vectorizing compilation scheme. The scheme is composed of an aggressive, generic offline stage coupled with a lightweight, target-specific online stage. Our method leverages the optimized intermediate results provided by the first stage across disparate SIMD architectures from different vendors, having distinct characteristics ranging from different vector sizes, memory alignment and access constraints, to special computational idioms.We demonstrate the effectiveness of our design using a set of kernels that exercise innermost loop, outer loop, as well as straight-line code vectorization, all automatically extracted by the common offline compilation stage. This results in performance comparable to that provided by specialized monolithic offline compilers. Our framework is implemented using open-source tools and standards, thereby promoting interoperability and extendibility.
Document type :
Conference papers
Complete list of metadatas

Cited literature [24 references]  Display  Hide  Download

https://hal.inria.fr/inria-00589692
Contributor : Erven Rohou <>
Submitted on : Saturday, April 30, 2011 - 4:22:06 PM
Last modification on : Thursday, July 18, 2019 - 9:46:04 PM
Long-term archiving on : Sunday, July 31, 2011 - 2:30:06 AM

File

CGO2011-OK.pdf
Files produced by the author(s)

Identifiers

  • HAL Id : inria-00589692, version 1

Citation

Dorit Nuzman, Sergei Dyshel, Erven Rohou, Ira Rosen, Kevin Williams, et al.. Vapor SIMD: Auto-Vectorize Once, Run Everywhere. International Symposium on Code Generation and Optimization, Olivier Temam, Apr 2011, Chamonix, France. ⟨inria-00589692⟩

Share

Metrics

Record views

1070

Files downloads

453