My research is on hardware–software abstractions. It includes computer architecture, programming languages, compilers, and software engineering.
Trade-offs between efficiency and accuracy are fundamental in many computing domains: graphics, vision, machine learning, compression, scientific computing, physical simulation, etc. Approximate computing is the idea that we can design systems that take advantage of these trade-offs and unlock efficiency gains that are impossible under fully precise execution.
Approximate computing spans the entire system stack, from hardware to applications. Approximate architectures expose new accuracy and reliability knobs; approximate compilers add new optimizations that carefully break program semantics; and programming languages constrain the impact of approximation.
My dissertation, Hardware and Software for Approximate Computing, surveys the approximate-computing research landscape.
Look me up at DBLP for another view on my publications.
Some of the links below are to the ACM database (so they can affect the ACM’s popularity statistics). Use the “local PDF” links if you prefer bypass this rigmarole.
The slides linked below are PDF files. Keynote files are available on request. (I don’t have PowerPoint versions; sorry.)