Curriculum vitae

Michel Steuwer


Michel Steuwer
Informatics Forum
10 Crichton Street
Edinburgh EH8 9AB
United Kingdom
michel.steuwer@ed.ac.uk
http://homepages.inf.ed.ac.uk/msteuwer

Professional Experience


The University of Edinburgh

since October 2014

Postdoctoral Research Associate

Edinburgh, UK

University of Münster

2010 - 2014

Research Associate

Münster, Germany

University Education


University of Münster

2010 - 2015

Ph.D. degree in computer science

Münster, Germany

University of Münster

2005 - 2010

Diploma degree in computer science with a minor in mathematics

Münster, Germany

Research Visits and Collaborations


Research collaboration with dividiti Ltd.

3 Month in 2016

Funded by the EU HiPEAC Network of Excellence

dividiti Ltd. in Cambridge, UK

Hosting of a visiting researcher

2 Month in 2016

Bastian Hagedorn from the University of Münster

University of Edinburgh, UK

Visiting researcher

3 Month in 2014

University of Edinburgh, UK

Visiting researcher

3 Month in 2013

Funded by the EU HiPEAC Network of Excellence

University of Edinburgh, UK

Visiting researcher

3 Month in 2014

Funded by the EU HPC-Europa 2 project

University of Edinburgh and the EPCC, UK

Awarded Honors


Awarded Honors

Awarded Grants

Research Community Activities


Membership and Participation in Research Networks

Conference Organisation

Organisation of Informal Groups

Program Committees

Artifact Evaluation Committees

External Reviewer for Conferences

Reviewer for Journals

Research Collaborations


Talks and Presentations


Invited Talk

From High-Level Functional Expressions to High-Performance OpenCL Code

TU Dresden, Germany

Centre for Advanced Electronics Dresden

Invited Talk

Schloss Dagstuhl, Germany

Colloquium of candidates nominated for the prize for best dissertation awarded by the German Informatics Society

Invited Talk

Saarland University, Germany

Invited Talk

Imperial College London, UK

Talk

University of Edinburgh, UK

Programming Language Interest Group at the University of Edinburgh

Invited Talk

Generating Performance Portable Code using Rewrite Rules

10/2015

Imperial College London, UK

PENCIL Developer Meeting

Guest Lecture

University of Edinburgh, UK

As part of the Elements of Programming Languages Course at the University of Edinburgh

Talk

From High-Level Functional Expressions to High-Performance OpenCL Code

Vancouver, Canada

International Conference on Functional Programming (ICFP) 2015

Talk

University of St. Andrews, UK

Scottish Programming Languages Seminar

Invited Talk

SkelCL: High-Level Programming of Multi-GPU Systems

05/2014

University of Münster, Germany

Institute for Computational and Applied Mathematics at the University of Münster

Invited Talk

SkelCL: High-Level Programming of Multi-GPU Systems

05/2014

TU Dresden, Germany

Workshop on Fast Data Processing on GPUs at the TU Dresden

Talk

Extending the SkelCL Library for Stencil Computations on Multi-GPU Systems

01/2014

Vienna, Austria

HiStencils workshop @ HiPEAC 2014

Invited Talk

SkelCL: High-Level Programming of Multi-GPU Systems

12/2013

University of Wuppertal, Germany

Research group on elementary particle physics, University of Wuppertal

Talk

Introducing and Implementing the Allpairs Skeleton for GPU Systems

07/2013

Paris, France

International Symposium on High-Level Parallel Programming and Applications (HLPP) 2013

Talk

High-Level Programming for Medical Imaging on Multi-GPU Systems using the SkelCL Library

06/2013

Barcelona, Spain

International Conference on Computational Science (ICCS) 2013

Talk

Using the SkelCL Library for High-Level GPU Programming of 2D Applications

08/2012

Rhodes Island, Greece

ParaPhrase 2012 workshop @ Euro-Par 2012

Talk

High-Level Programming for Heterogeneous Systems with Accelerators

06/2012

Münster, Germany

PDESoft 2012 workshop

Talk

Towards High-Level Programming of Multi-GPU Systems Using the SkelCL Library

05/2012

Shanghai, China

AsHES 2012 workshop @ IPDPS 2012

Invtied Talk

A Skeleton Library for Heterogeneous Multi-/Many-Core Systems

04/2012

Edinburgh, UK

NAIS workshop on Skeletons, Heterogeneous Systems and Domain Specific Optimisation

Talk

Towards a High-Level Approach for Programming Distributed Systems with GPUs

01/2012

Timisoara, Romania

COST Action IC0805 (“ComplexHPC”) meeting

Invited Talk

SkelCL - A High-Level Programming Library for GPU Programming

12/2011

Jülich Supercomputing Centre, Germany

Talk

SkelCL - A Portable Skeleton Library for High-Level GPU Programming

05/2011

Anchorage, Alaska, USA

HIPS 2011 workshop @ IPDPS 2011

Invited Talk

Development of an Online Game as a Student Project

09/2008

Chernihiv, Ukraine

ITSoftTEAM workshop

Teaching Experience


Fall Term 2016

  • Guest Lecture in the Compiling Techniques course held by Christophe Dubach

  • Voluntary assistance in the tutorials of the Compiling Techniques course held by Christophe Dubach

Fall Term 2015

  • Organiser and Lecturer of the C++ programming course The Humble C++ Programmer aiming to improve the PhD students coding skills

  • Guest Lecture on DSLs and Rewrite-Based Optimisations for Performance-Portable Parallel Programming in the Elements of Programming Languages course held by James Cheney

  • Voluntary assistance in the tutorials of the Compiling Techniques course held by Christophe Dubach

Fall Term 2014

  • Guest Lecture in the Compiling Techniques course held by Christophe Dubach

Summer Term 2014

  • Supervised MSc student project: Design and Implementation of a High-level API for Programming Heterogeneous Clusters

Winter Term 2013/2014

  • Supervised MSc student project: High-level Programming of Online Games in Future Generation Networks

Summer Term 2013

  • Course Design and Lecturer: Introduction to Programming with C and C++

  • Teaching assistant: Multi-core and GPU: Parallel Programming

Winter Term 2012/2013

  • Teaching assistant: Operating Systems

Summer Term 2012

  • Supervised MSc student project: High-level Programming of Heterogeneous Systems

  • Teaching assistant: Multi-core and GPU: Parallel Programming

Winter Term 2011/2012

  • Teaching assistant: Technical Aspects of Cloud Computing

  • Teaching assistant: Operating Systems

Summer Term 2011

  • Supervised UG/MSc student project: Internet- and GPU-based Cloud Computing

  • Course design and teaching assistant: Multi-core and GPU: Parallel Programming

Winter Term 2010/2011

  • Supervised UG student project: High-level GPU Programming

Supervised Students


The following students are co-supervised with Sergei Gorlatch at the University of Münster

PhD studies of Bastian Hagedorn

since 10/2016

Efficient GPU Code Generation for Stencil Computations via Parallel Patterns

PhD studies of Ari Rasch

since 06/2015

Parametric Algorithmic Skeletons

PhD studies of Michael Haidl

since 06/2015

PACXX: A GPU Programming Model Embedded in C++

The following students are co-supervised with Christophe Dubach at the University of Edinburgh

PhD studies of Daniel Hillerström

since 09/2015

Efficient Compilation of Handlers for Algebraic Effects

PhD studies of Larisa Stoltzfus

since 09/2015

Stencil-based Acoustic Applications

PhD studies of Adam Harries

since 10/2014

Spare and Irregular Data-Parallel Applications on GPUs

PhD studies of Juan José Fumero

since 10/2014

Heterogeneous Computing in Managed Languages

PhD studies of Toomas Remmelg

since 10/2014

Automatic Performance Optimisations via Provably Correct Rewrite Rules

The following students have been co-supervised with Sergei Gorlatch at the University of Münster

MSc studies of Bastian Hagedorn

09/2016

GPU Code Generation for Stencil Computations via Parallel Patterns

Bachelor thesis of André Lüers

07/2014

Evaluation of the Skeleton Library FastFlow

Bachelor thesis of Lars Klein

07/2014

A Parallel Implementation of the T-CUP Software using the SkelCL Library

Master thesis of Michael Olejnik

01/2014

A GPU-based Classification Framework for HIV Resistance Prediction

Master thesis of Stefan Breuer

01/2014

Extending the SkelCL Library for Stencil Computations

Diploma thesis of Wadim Hamm

11/2013

Development of a Divide & Conquer Skeleton for SkelCL

Bachelor thesis of Matthias Droste

07/2013

Evaluation of the Skeleton Library SkePU

Bachelor thesis of Kai Kientopf

06/2013

Implementation of the Needleman-Wunsch Algorithm and the Breath-First-Search with SkelCL

Master thesis of Florian Quinkert

06/2013

A Model for Predicting Work Distribution in Heterogeneous Systems and its Implementation in SkelCL

Master thesis of Malte Friese

03/2013

Extending the Skeleton Library SkelCL with a Skeleton for Allpairs Computations

Bachelor thesis of Sebastian Mißbach

03/2013

Implementing the LU-Decomposition and the Mersenne-Twister with the SkelCL Library

Bachelor thesis of Patrick Schiffler

03/2013

Performance Analysis of SkelCL using B+ Tree Traversal and 3D Jacobi Stencil Computation

Diploma thesis of Markus Blank-Burian

01/2013

Simulation and Analysis of Two-Dimensional Turbulences on Parallel Computer Architectures

Diploma thesis of Matthias Buß

06/2012

Adding Multidimensional Data Types to the Multi-GPU Skeleton Library SkelCL

Bachelor thesis of Michael Olejnik

09/2011

Investigating the Use of GPUs for Radix Sort

Bachelor thesis of Jan Gerd Tenberge

09/2011

Extending the SkelCL Library with Iterators

Bachelor thesis of Stefan Breuer

08/2011

Enhancing SkelCL’s MapOverlap Skeleton

Bachelor thesis of Tobias Günnewig

08/2011

Developing a Library for Manipulating Source Code of C-based Languages