Compiler Systems Portfolio
Optimizing compilers and runtimes.
I build compiler infrastructure for program optimization, equality saturation, hardware-aware compilation, managed runtimes, and MLIR tooling. The projects below span research prototypes, open-source infrastructure, and production-minded systems work.
Featured Systems
Recent compiler research
CC 2026
Foresight
A parallel, extensible equality saturation library with programmable saturation strategies, generalized e-graph metadata, and deferred parallel rewriting.
- Impact
- Up to 16x speedup
- Role
- Designed and implemented the core system
- Scala
- e-graphs
- parallel rewriting
- IR metadata
CGO 2026
SkeleShare
Automates hardware resource allocation and sharing by combining equality saturation, algorithmic skeletons, and solver-based extraction.
- Impact
- Matches or exceeds expert designs
- Role
- Equality-saturation system for hardware design search
- FPGA
- HLS
- equality saturation
- solver extraction
Compiler Infrastructure
IRs, runtimes, and optimizers
CGO 2024
Latent Idiom Recognition
Recognizes hidden BLAS and PyTorch idioms by representing programs and idioms in a minimalist functional array language.
- Impact
- 1.46x geometric mean speedup
- Role
- Functional array IR and equality-saturation recognizer
- array IRs
- BLAS
- PyTorch
- optimization search
Open source
Flame
A long-running hobby compiler framework for managed languages, CIL optimization, SSA-based analysis, and LLVM-oriented lowering.
- Impact
- Evolved from expression trees into an SSA CFG optimizer
- Role
- Designed the IR, analyses, optimization passes, back ends
- C#
- .NET IL
- SSA
- LLVM IR
Open source
MLIR.NET
Models MLIR operations, regions, attributes, and types in C#, then reconstructs ODS to generate safer dialect-specific APIs.
- Impact
- TableGen-driven typed APIs
- Role
- Building parser, printer, IR model, and generated dialect APIs
- C#
- MLIR
- TableGen
- ODS
- typed IRs
Master's thesis
Julia GPU Garbage Collection
Added LLVM IR-level GC lowering hooks to Julia and used them to build transparent mark-and-sweep garbage collection for CUDAnative GPU kernels.
- Impact
- 2x faster than CUDA malloc baseline; thesis-prize nominated
- Role
- Designed Julia compiler GC hooks and a GPU mark-and-sweep runtime
- Julia
- LLVM IR
- GPU
- garbage collection
- CUDAnative
Research project
Modelverse JIT
A tiered just-in-time compiler for graph-based bytecode, moving hot programs from interpretation to SSA-based optimization.
- Impact
- 37x speedup over reference implementation
- Role
- Built interpreter, baseline JIT, and optimizing SSA JIT
- JIT
- SSA
- bytecode
- runtime optimization
META 2019
FlashFreeze
Low-overhead JavaScript instrumentation for serializing functions, closures, and captured variables by making lexical environments queryable.
- Impact
- 3% Octane overhead vs 76% prior work
- Role
- Designed the capture-list instrumentation and serializer
- JavaScript
- TypeScript
- source rewriting
- closures
- serialization