Christophe Dubach

Christophe Dubach

Associate Professor
Canada CIFAR AI Chair, Mila

McGill University

About

I’m an Associate Professor jointly appointed in the department of Electrical and Computer Engineering (ECE) and the school of Computer Science (CS) at McGill University. I also hold a Canada CIFAR AI Chair at Mila. Up until 2019, I was a Reader (Associate Professor) at the University of Edinburgh.

My research interests include data-parallel language design and implementation, high-level code generation and optimisation for parallel hardware (e.g. GPU, FPGAs), architecture design space exploration, and the use of machine-learning techniques applied to all these topics.

Several reseach positions (PhD, MSc or UG interns) are available in my group at McGill, please make sure to check the openings page.
Interests
  • Compilers / Code generation
  • Parallel programming language design
  • Hardware design space exploration
  • Heterogeneous computing
  • Machine learning
Education
  • PhD in Informatics, 2009

    University of Edinburgh, UK

  • MSc in Computer Science, 2005

    EPFL, Switzerland

Meet the Team

Principal Investigator

Avatar

Christophe Dubach

Associate Professor
Canada CIFAR AI Chair, Mila

Compilers / Code generation, Parallel programming language design, Hardware design space exploration, Heterogeneous computing, Machine learning

PhD students

Avatar

Christof Schlaak

PhD student (Edinburgh University)

High-level sythesis for FPGAs

Avatar

Tzung-Han Juang

PhD student (McGill University)

High-Level Synthesis for FPGAs

Avatar

Federico Pizzuti

PhD student (Edinburgh University)

High-level functional abstraction and compilation for sparse data structures

Avatar

Larisa Stoltzfus

PhD student (Edinburgh University)

Code generation and high-level abstractions for Stencil computations

Avatar

Naums Mogers

PhD student (Edinburgh University)

GPU code generation for neural networks

Avatar

Jonathan Van der Cruysse

PhD student (McGill University)

Machine Learning applied to compilers

MSc students

Avatar

Hamza Javed

MSc student (McGill University)

High-Level Syntehsis for FPGAs for irregular applications

Avatar

Jacob Peng

MSc student (McGill University)

Differential Programming, MLIR

Avatar

Shakiba Bolbolian Kha

MSc student (McGill University)

Compilation, Accelerators

Avatar

Zhitao Lin

MSc student (McGill University)

High-Performance code generation, Functional IR

Interns

Avatar

Ayan Chakraborty

Summer 2021 intern (McGill University)

Hardware design / FPGAS

Avatar

Jiaxuan Cai

Summer 2021 intern (McGill University)

Hardware design / FPGAs

Alumni

Alumni Postdocs

Avatar

Lu Li

Postdoc 2018-2020 (Edinburgh University) Now Deep learning engineer at Zenseact

Avatar

Michel Steuwer

Postdoc 2015-2017 (Edinburgh University) Now Lecturer at Glasgow University

Avatar

Thibaut Lutz

Postdoc 2015 (Edinburgh University) Now at Nvidia

Alumni PhD

Avatar

Paul-Jules Micolet

PhD student 2014-2019 (Edinburgh University)

From Software to Hardware: Making Dynamic Multicore Processors Practical

Avatar

Toomas Remmelg

PhD student 2014-2019 (Edinburgh University)

Automatic Performance Optimisation of Parallel Programs for GPUs via Rewrite Rules

Avatar

Juan Fumero

PhD student 2013-2017 (Edinburgh University)

Accelerating Interpreted Programming Languages on GPUs with Just-In-Time Compilation and Runtime Optimisations

Alumni MSc

Avatar

Andrej Ivanis

MSc student 2018-2019 (Edinburgh University)

Optimising Convolutional Neural Networks on FPGAs

Avatar

Adam Harries

MSc student 2014-2015 (Edinburgh University)

Sparsity and Irregularity in a Dense Skeletal GPU Framework

Avatar

Daniel Hillerstroem

MSc student 2015-2016 (Edinburgh University)

Compilation of effect handlers and their applications to concurrency

Avatar

Emanuel Martinov

MSc student 2015-2017 (Edinburgh University)

High-Performance GPU Implementation of Histogram Computation problem

Avatar

Rudi Horn

MSc student 2016 (Edinburgh University)

Increasing portable machine learning performance by application of rewrite rules on Google Tensorflow data flow graphs

Alumni BSc

Avatar

Martin Kristien

BSc student 2016-2017 (Edinburgh University)

High-level synthesis of functional patterns for reconfigurable logic

Teaching

Current courses (McGill University):

Code Course Department Website Year Term
COMP764/ECSE688 High-level Synthesis of Digital Systems CS/ECE N/A 2022 Winter
COMP520 Compiler Design CS link 2022 Winter
ECSE324 Computer Organization ECE link 2021 Fall

Past courses (McGill University):

Code Course Department Website Year Term
COMP520 Compiler Design CS link 2021 Winter
ECSE324 Computer Organization ECE link 2020 Fall
ECSE324 Computer Organization ECE link 2020 Winter

Past courses (Edinburgh University):

Code Course Website Year Semester
INFR10053 Compiling Techniques link 2019-20 1
INFR10053 Compiling Techniques link 2018-19 1
INFR10053 Compiling Techniques link 2017-18 1
INFR10053 Compiling Techniques link 2016-17 1
INFR10053 Compiling Techniques link 2015-16 1
INFR10053 Compiling Techniques link 2014-15 2

Recent Publications

(2020). Automatic generation of specialized direct convolutions for mobile GPUs. 13th Annual Workshop on General Purpose Processing using Graphics Processing Unit (GPGPU@PPoPP).

Cite

(2020). Generating fast sparse matrix vector multiplication from a high level generic functional IR. 29th International Conference on Compiler Construction (CC@CGO).

Cite

(2020). High-level hardware feature extraction for GPU performance prediction of stencils. 13th Annual Workshop on General Purpose Processing using Graphics Processing Unit (GPGPU@PPoPP).

Cite

(2020). Tiling Optimizations for Stencil Computations Using Rewrite Rules in Lift. ACM Transactions on Architecture and Code Optimization, ACM TACO.

Cite

(2019). High-level synthesis of functional patterns with Lift. Proceedings of ACM SIGPLAN International Workshop on Libraries, Languages, and Compilers for Array Programming (ARRAY@PLDI).

Cite

Contact