activity
20152023
most citedAutotuning OpenCL Workgroup Size for Stencil Patterns

8 citations · 27 across the 12 of their papers we have counts for

collaborators

12 papers

cs.PL2023

Descend: A Safe GPU Systems Programming Language

Bastian Köpcke, Sergei Gorlatch, Michel Steuwer

Graphics Processing Units (GPU) offer tremendous computational power by following a throughput oriented computing paradigm where many thousand computational units operate in parall…

cs.PL2023

Traced Types for Safe Strategic Rewriting

Rongxiao Fu, Ornela Dardha, Michel Steuwer

Strategy languages enable programmers to compose rewrite rules into strategies and control their application. This is useful in programming languages, e.g., for describing program…

cs.PL2023★ 3 cited

Structural Subtyping as Parametric Polymorphism

Wenhao Tang, Daniel Hillerström, James McKinna +4

Structural subtyping and parametric polymorphism provide similar flexibility and reusability to programmers. For example, both features enable the programmer to provide a wider rec…

cs.PL2022

BaCO: A Fast and Portable Bayesian Compiler Optimization Framework

Erik Hellsten, Artur Souza, Johannes Lenfers +7

We introduce the Bayesian Compiler Optimization framework (BaCO), a general purpose autotuner for modern compilers targeting CPUs, GPUs, and FPGAs. BaCO provides the flexibility ne…

cs.PL2022

Primrose: Selecting Container Data Types by Their Properties

Xueying Qin, Liam O'Connor, Michel Steuwer

Context: Container data types are ubiquitous in computer programming, enabling developers to efficiently store and process collections of data with an easy-to-use programming inter…

cs.PL2022

RISE & Shine: Language-Oriented Compiler Design

Michel Steuwer, Thomas Koehler, Bastian Köpcke +1

The trend towards specialization of software and hardware - fuelled by the end of Moore's law and the still accelerating interest in domain-specific computing, such as machine lear…

cs.PL2021★ 5 cited

Sketch-Guided Equality Saturation: Scaling Equality Saturation to Complex Optimizations of Functional Programs

Thomas Koehler, Phil Trinder, Michel Steuwer

Generating high-performance code for diverse hardware and application domains is challenging. Functional array programming languages with patterns like map and reduce have been suc…

cs.PL2021★ 1 cited

Row-Polymorphic Types for Strategic Rewriting

Rongxiao Fu, Xueying Qin, Ornela Dardha +1

We present a type system for strategy languages that express program transformations as compositions of rewrite rules. Our row-polymorphic type system assists compiler engineers to…

cs.PL2020★ 4 cited

A Language for Describing Optimization Strategies

Bastian Hagedorn, Johannes Lenfers, Thomas Koehler +2

Optimizing programs to run efficiently on modern parallel hardware is hard but crucial for many applications. The predominantly used imperative languages - like C or OpenCL - force…

cs.DC2017★ 5 cited

Strategy Preserving Compilation for Parallel Functional Code

Robert Atkey, Michel Steuwer, Sam Lindley +1

Graphics Processing Units (GPUs) and other parallel devices are widely available and have the potential for accelerating a wide class of algorithms. However, expert programming ski…

cs.DC2015★ 8 cited

Autotuning OpenCL Workgroup Size for Stencil Patterns

Chris Cummins, Pavlos Petoumenos, Michel Steuwer +1

Selecting an appropriate workgroup size is critical for the performance of OpenCL kernels, and requires knowledge of the underlying hardware, the data being operated on, and the im…

cs.DC2015★ 1 cited

Patterns and Rewrite Rules for Systematic Code Generation (From High-Level Functional Patterns to High-Performance OpenCL Code)

Michel Steuwer, Christian Fensch, Christophe Dubach

Computing systems have become increasingly complex with the emergence of heterogeneous hardware combining multicore CPUs and GPUs. These parallel systems exhibit tremendous computa…