Charith Mendis

  • Assistant Professor
  • Department of Computer Science
  • University of Illinois at Urbana-Champaign
  • Office:
  • 4118 Siebel Center for Computer Science
  • 201 N. Goodwin Ave., Urbana IL 61801
Profile Picture

Our group has multiple PhD positions available for Fall 2023. If you are interested in doing novel program optimization and compiler research targeting domains such as ML and data science, please be in touch with me and consider applying for PhD positions at UIUC CS.

I am an assistant professor in the Department of Computer Science at the University of Illinois at Urbana-Champaign.

Before joining UIUC, I spent a year at Google Brain working as a Visiting Faculty Researcher. Prior to that, I completed my PhD at Massachusetts Institute of Technology (MIT) advised by Prof. Saman Amarasinghe. Earlier, I completed my masters at MIT and my bachelors at University of Moratuwa. I was awarded the William A. Martin Memorial Thesis Award for my masters thesis at MIT and the institute Gold Medal for my bachelors.

Research Interests

My broad research interests include programming languages, compilers and machine learning. More specifically, I am interested in using data-driven approaches to solve hard systems optimization problems (ML for Systems), for example, in compilers, and to develop high performance systems that can aid in compute intensive machine learning tasks (Systems for ML).

I envision a future where most compiler optimizations will be auto-generated as opposed to manually written. Not only will they produce faster code, but also they will be easier to develop and maintain. I belive both machine learning and formal methods have a role to play in realizing this vision. In the ML front, we have used data-driven techniques to develop novel compiler cost models (Ithemal, TPU cost model) and learn end-to-end compiler optimization policies (Vemal) that outperform hand-crafted tools. Using formal reasoning, we have automatically generated correct-by-construction compiler auto-vectorizers (Vegen). I believe the synergy between both machine learning and formal methods will help compilers evolve organically to ever changing workloads and hardware architectures.

In my earlier work, I have also developed techniques to rejuvenate performance of already hand-optimized codes which are susceptible to bit-rot using both dynamic analysis (Helium) as well as static analysis (Revec) techniques.

Students

PhD Students:

  • Stefanos Baziotis (Fall 2021 - )
  • Damitha Lenodara (Fall 2021 - )
  • Ahan Gupta (Fall 2022 - )
  • Avaljot Singh (Fall 2022 - ) - Co-advised with Gagandeep Singh
  • Yishen Chen - Co-advised with Saman Amarasinghe at MIT

MS and Undergraduate Students:

  • Yufeng Wang (Fall 2021 - )
  • Tianfan Xu (Senior)

Teaching

  • CS 598CM: ML for Compilers and Architecture (Fall 2021, Fall 2022)
  • CS 526: Advanced Compiler Construction (Spring 2022)
  • CS 591ACT: Advanced Compiler Technology Seminar (Spring 2022)

Service

  • PC : PLDI 2023, MLSys 2023, PACT 2022, PLDI 2022, CGO 2022, PACT 2021, SPLASH SRC 2021
  • ERC : ASPLOS 2023, ASPLOS 2022, ASPLOS 2021, PACT 2020
  • Reviewer : ICML 2022, NeurIPS 2021, ICLR 2021 (Outstanding Reviewer), ICML 2021

Publications

Conference Publications

  • SPADE: A Flexible and Scalable Accelerator for SpMM and SDDMM
    Gerasimos Gerogiannis, Serif Yesil, Damitha Lenadora, Dingyuan Cao, Charith Mendis, Josep Torrellas
    ISCA 2023 (Accepted)

  • Unified Convolution Framework: A compiler-based approach to support sparse convolutions
    Jaeyeon Won, Changwan Hong, Charith Mendis, Joel Emer, Saman Amarasinghe
    MLSys 2023 (Accepted)

  • TGOpt: Redundancy-Aware Optimizations For Temporal Graph Attention Networks
    Yufeng Wang, Charith Mendis
    PPoPP 2023
    [PDF] [Code] [Bibtex]
  • WACO: Learning workload-aware co-optimization of the format and schedule of a sparse tensor program
    Jaeyeon Won, Charith Mendis, Joel Emer, Saman Amarasinghe
    ASPLOS 2023
    [PDF] [Bibtex]
  • GRANITE: A Graph Neural Network Model for Basic Block Throughput Estimation
    Ondrej Sykora, Amir Yazdanbakhsh, Phitchaya Phothilimthana, Charith Mendis
    IISWC 2022
    [PDF] [Bibtex]
  • All you need is Superword-Level Parallelism: Systematic Control-Flow Vectorization with SLP
    Yishen Chen, Charith Mendis, Saman Amarasinghe
    PLDI 2022
    [PDF] [Bibtex]
  • Vegen: A Vectorizer Generator for SIMD and Beyond
    Yishen Chen, Charith Mendis, Michael Carbin, Saman Amarasinghe
    ASPLOS 2021
    [PDF] [Bibtex]
  • A Learned Performance Model for Tensor Processing Units
    Samuel Kaufman, Phitchaya Phothilimthana, Yanqi Zhou, Charith Mendis, Sudip Roy, Amit Sabne, Mike Burrows
    MLSys 2021
    [ArXiv]
  • DiffTune: Optimizing CPU Simulator Parameters with Learned Differentiable Surrogates
    Alex Renda, Yishen Chen, Charith Mendis, Michael Carbin
    MICRO 2020
    [ArXiv] [Bibtex]
  • Compiler Auto-Vectorization with Imitation Learning
    Charith Mendis, Cambridge Yang, Yewen Pu, Saman Amarasinghe, Michael Carbin
    NeurIPS 2019
    [PDF] [Bibtex]
  • BHive: A Benchmark Suite and Measurement Framework for Validating x86-64 Basic Block Performance Models
    Yishen Chen, Ajay Brahmakshatriya, Charith Mendis, Alex Renda, Eric Atkinson, Ondrej Sykora, Saman Amarasinghe, Michael Carbin
    IISWC 2019
    [PDF] [Project Page] [Bibtex]
  • Ithemal: Accurate, Portable and Fast Basic Block Throughput Estimation using Deep Neural Networks
    Charith Mendis, Alex Renda, Saman Amarasinghe, Michael Carbin
    ICML 2019
    [PDF] [Project Page] [Bibtex]
    Best Paper Award (ML for Systems workshop @ISCA 2019)
    Press - MIT News, Slashdot, i-programmer, Register UK
  • Revec: Program Rejuvenation through Revectorization
    Charith Mendis*, Ajay Jain*, Paras Jain, Saman Amarasinghe
    CC 2019
    [PDF] [Project Page] [Bibtex]
  • goSLP: Globally Optimized Superword Level Parallelism Framework
    Charith Mendis, Saman Amarasinghe
    PACMPL(OOPSLA) 2018
    [PDF] [Project Page] [Bibtex]
  • Making Caches Work for Graph Analytics
    Yunming Zhang, Vladimir Kiriansky, Charith Mendis, Saman Amarasinghe, Matei Zaharia
    IEEE BigData 2017
    [PDF] [Bibtex]
    Best Student Paper Award
  • Parallelizing WFST Speech Decoders
    Charith Mendis, Jasha Droppo, Saeed Maleki, Madanlal Musuvathi, Todd Mytkowicz, Geoffrey Zweig
    ICASSP 2016
    [PDF]
  • Helium: Lifting High-Performance Stencil Kernels from Stripped x86 Binaries to Halide DSL Code
    Charith Mendis, Jeffrey Bosboom, Kevin Wu, Shoaib Kamil, Jonathan Ragan-Kelley, Sylvain Paris, Qin Zhao, Saman Amarasinghe
    PLDI 2015
    [PDF] [Project Page] [Bibtex]
    Press - Fortune News, MIT News, Adobe blog, Yahoo Tech, Computer Business Review

Theses

  • Towards Automated Construction of Compiler Optimizations
    Charith Mendis
    PhD Thesis, Massachusetts Institute of Technology
    [PDF] [Bibtex]
  • Helium: Lifting High-Performance Stencil Kernels from Stripped x86 Binaries to Halide DSL Code
    Charith Mendis
    SM Thesis, Massachusetts Institute of Technology
    [PDF] [Bibtex]
    William A. Martin Memorial Thesis Prize

Selected Awards

  • Best Paper Award - ML for Systems workshop @ISCA 2019 (link)
  • Best Student Paper Award - IEEE BigData 2017
  • William A. Martin Memorial Thesis Prize for the best SM thesis in Computer Science at MIT (link)
  • MIT Energy Initiative Fellowship 2013-2014 (link)
  • Sri Lanka Telecom Gold Medal for the best student at University of Moratuwa majoring Electronics and Telecommunication Engineering