Papers
Topics
Authors
Recent
Gemini 2.5 Flash
Gemini 2.5 Flash
119 tokens/sec
GPT-4o
56 tokens/sec
Gemini 2.5 Pro Pro
43 tokens/sec
o3 Pro
6 tokens/sec
GPT-4.1 Pro
47 tokens/sec
DeepSeek R1 via Azure Pro
28 tokens/sec
2000 character limit reached

Experiences Building an MLIR-based SYCL Compiler (2312.13170v1)

Published 20 Dec 2023 in cs.PL, cs.DC, and cs.PF

Abstract: Similar to other programming models, compilers for SYCL, the open programming model for heterogeneous computing based on C++, would benefit from access to higher-level intermediate representations. The loss of high-level structure and semantics caused by premature lowering to low-level intermediate representations and the inability to reason about host and device code simultaneously present major challenges for SYCL compilers. The MLIR compiler framework, through its dialect mechanism, allows to model domain-specific, high-level intermediate representations and provides the necessary facilities to address these challenges. This work therefore describes practical experience with the design and implementation of an MLIR-based SYCL compiler. By modeling key elements of the SYCL programming model in host and device code in the MLIR dialect framework, the presented approach enables the implementation of powerful device code optimizations as well as analyses across host and device code. Compared to two LLVM-based SYCL implementations, this yields speedups of up to 4.3x on a collection of SYCL benchmark applications. Finally, this work also discusses challenges encountered in the design and implementation and how these could be addressed in the future.

User Edit Pencil Streamline Icon: https://streamlinehq.com
Authors (8)
  1. Ettore Tiotto (2 papers)
  2. Whitney Tsang (2 papers)
  3. Lukas Sommer (1 paper)
  4. Julian Oppermann (1 paper)
  5. Victor Lomüller (1 paper)
  6. Mehdi Goli (6 papers)
  7. James Brodman (1 paper)
  8. Víctor Pérez (2 papers)

Summary

We haven't generated a summary for this paper yet.