Last updated March 17th, 2024.

Gus Smith

Contact: gussmith@cs.washington.edu

If you’re an undergrad or master’s student looking for a project and my research resonates with you, please email me!

2024-01-09: The Lakeroad paper, “FPGA Technology Mapping Using Sketch-Guided Program Synthesis”, was accepted to ASPLOS 2024! Arxiv link. (for full timeline, see Timeline)

(who I am)

I’m a PhD student at the University of Washington’s Paul G. Allen School of Computer Science & Engineering, working with Luis Ceze and Zach Tatlock.

It’s my belief that compilers can and should be automatically generated from formal descriptions of the hardware to which they compile. The goal of my research is to convince you of the same.

(my projects)

I’m currently working on Lakeroad, a tool which uses program synthesis and automatic semantics extraction from Verilog to generate hardware designs for FPGAs given just the vendor-provided Verilog models of an FPGA’s hardware primitives.

I’m also the author and maintainer of Glenside, a pure, functional, low-level tensor language for machine learning which is amenable to powerful term rewriting techniques such as equality saturation. Myself and my collaborators at Harvard, Princeton, and UW utilized Glenside when building 3LA: an end-to-end design methodology for deep learning accelerators.

(selected papers)

My colleagues and I have published a number of papers on the theme of automatically generating compilers from formal models of hardware. For a full list, please see my CV.

FPGA Technology Mapping Using Sketch-Guided Program Synthesis. To appear at ASPLOS 2024. Arxiv link. Gus Henry Smith, Ben Kushigian, Vishal Canumalla, Andrew Cheung, Steven Lyubomirsky, Sorawee Porncharoenwase, René Just, and Zachary Tatlock. (The Lakeroad paper.)

Application-Level Validation of Accelerator Designs Using a Formal Software/Hardware Interface. TODAES 2023. Arxiv link. Bo-Yuan Huang, Steven Lyubomirsky, Yi Li, Mike He, Gus Henry Smith, Thierry Tambe, Akash Gaonkar, Vishal Canumalla, Gu-Yeon Wei, Aarti Gupta, Zachary Tatlock, Sharad Malik. (The 3LA paper.)

Pure Tensor Program Rewriting via Access Patterns (Representation Pearl). MAPS 2021. Arxiv link. Gus Henry Smith, Andrew Liu, Steven Lyubomirsky, Scott Davidson, Joseph McMahan, Michael Taylor, Luis Ceze, Zachary Tatlock. (The Glenside paper.)

I’m also lucky enough to collaborate with colleagues in computational biology, which has led to at least one publication:

Fridge Compiler: Optimal Circuits from Molecular Inventories. International Conference on Computational Methods in Systems Biology. Lancelot Wathieu, Gus Smith, Luis Ceze, and Chris Thachuk.

(industry experience)

I’ve had many great internships in industry, and I’m always looking for more! In late 2023, I began a year-round appointment working with Noah Evans at Sandia National Labs, applying formal methods to hardware synthesis. In the summer of 2021, I worked with Aart Bik at Google on a sparse compiler autotuner for MLIR, and I continued that work as a part-time Student Researcher in 2022 with Penporn Koanantakool. In the summer of 2019, I worked with Marco Heddes on static analysis of TVM/Relay programs as part of Azure’s AI and Advanced Architectures team. Pre-Ph.D., I also interned a bunch at Google: implementing the Bluetooth protocol RFCOMM for Fuchsia with Marie Janssen, improving the Chrome Remote Desktop experience on Raspberry Pis with Scott Nichols, and working with Mona El Mahdy on profiling Android apps.

(mentors)

In addition to Zach, Luis, and my many great mentors in industry, I’ve also been mentored by Vijay Narayanan and Jack Sampson, who advised me during my BS and Master’s degrees at Penn State.

(mentees)

I have been lucky enough to mentor many great students in my short career. I’m currently working with Vishal Canumalla (GitHub, LinkedIn) and Andrew Cheung (GitHub, LinkedIn). Previously at UW, I also worked with Andrew Liu. While at Penn State, I worked with a great team of motivated undergrads: Nelson Troncoso Aldas, Christopher Pratt, David de Matheu, and Tom Kawchak.

(fun stuff)

I’m lucky to have called Pennsylvania home throughout all the previous chapters of my life, having lived there until 2018 when I started a new chapter in Seattle. I grew up in Mountain Top (in the Wyoming Valley, outside of Wilkes-Barre) and have traveled to/lived in all corners of the state. In my free time, I write fiction and poetry, program, surf, run, and just generally try to enjoy life in and around Seattle.