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

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 and learned as opposed to manually written. Not only will they produce faster code, but also they will be easier to develop and maintain. To this end, I have used data-driven techniques to develop novel compiler cost models (Ithemal) and learn end-to-end compiler optimization policies (Vemal) that outperform hand-crafted tools. Please visit our Deep Compiler project page to find out more about how we are modernizing the way compilers are constructed.

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.

I am looking for motivated graduate students who are interested in joining me at UIUC. If this sounds interesting, please be in touch with me and consider applying for PhD positions at UIUC CS.


  • May 01: Serving in the Program Committee of PACT 2021 and CGO 2022. Consider submitting your work!
  • May 01: Reviewing for ICLR 2021, ICML 2021 and NeurIPS 2021. Consider submitting your work!
  • Nov 18: Our paper on automatically generating compiler auto-vectorizers was accepted at ASPLOS 2021
  • Aug 24: Started working at Google Brain as a Visiting Faculty Researcher
  • Jul 07: Our paper on learning CPU simulator parameters was accepted at MICRO 2020


Conference Publications

  • 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
  • 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
    [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
  • 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


  • 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