My research is on computer architecture and programming languages.
I am particularly enthusiastic about rethinking hardware–software abstractions.
For current projects, see the research happening in my research group, Capra.
Approximate Computing
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.
Publications
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.)
Conference Papers
-
“EVA²: Exploiting Temporal Redundancy in Live Computer Vision.”
Mark Buckler, Philip Bedoukian, Suren Jayasuriya, and Adrian Sampson.
In
ISCA 2018.
-
“Programming Language Support for Natural Language Interaction.”
Alex Renda, Harrison Goldstein, Sarah Bird, Chris Quirk, and Adrian Sampson.
In
SysML 2018.
-
“Static Stages for Heterogeneous Programming.”
Adrian Sampson, Kathryn S McKinley, and Todd Mytkowicz.
In
OOPSLA 2017.
-
“Reconfiguring the Imaging Pipeline for Computer Vision.”
Mark Buckler, Suren Jayasuriya, and Adrian Sampson.
In
ICCV 2017.
-
“Let’s Fix OpenGL.”
Adrian Sampson.
In
SNAPL 2017.
-
“Probability Type Inference for Flexible Approximate Programming.”
Brett Boston, Adrian Sampson, Dan Grossman, and Luis Ceze.
In
OOPSLA 2015.
-
“Hardware–Software Co-Design: Not Just a Cliché.”
Adrian Sampson, James Bornholt, and Luis Ceze.
In
SNAPL 2015.
-
“SNNAP: Approximate Computing on Programmable SoCs via Neural Acceleration.”
Thierry Moreau, Mark Wyse, Jacob Nelson, Adrian Sampson, Hadi Esmaeilzadeh, Luis Ceze, and Mark Oskin.
In
HPCA 2015.
-
“Monitoring and Debugging the Quality of Results in Approximate Programs.”
Michael Ringenburg, Adrian Sampson, Isaac Ackerman, Luis Ceze, and Dan Grossman.
In
ASPLOS 2015.
-
“Expressing and Verifying Probabilistic Assertions.”
Adrian Sampson, Pavel Panchekha, Todd Mytkowicz, Kathryn S McKinley, Dan Grossman, and Luis Ceze.
In
PLDI 2014.
-
“Approximate Storage in Solid-State Memories.”
Adrian Sampson, Jacob Nelson, Karin Strauss, and Luis Ceze.
In
MICRO 2013.
-
“Neural Acceleration for General-Purpose Approximate Programs.”
Hadi Esmaeilzadeh, Adrian Sampson, Luis Ceze, and Doug Burger.
In
MICRO 2012.
-
“Automatic Discovery of Performance and Energy Pitfalls in HTML and CSS.”
Adrian Sampson, Călin Caşcaval, Luis Ceze, Pablo Montesinos, and Dario Suarez Gracia.
In
IISWC 2012.
-
“Architecture Support for Disciplined Approximate Programming.”
Hadi Esmaeilzadeh, Adrian Sampson, Luis Ceze, and Doug Burger.
In
ASPLOS 2012.
-
“EnerJ: Approximate Data Types for Safe and General Low-Power Computation.”
Adrian Sampson, Werner Dietl, Emily Fortuna, Danushen Gnanapragasam, Luis Ceze, and Dan Grossman.
In
PLDI 2011.
-
“Composable Specifications for Structured Shared-Memory Communication.”
Benjamin Wood, Adrian Sampson, Luis Ceze, and Dan Grossman.
In
OOPSLA 2010.
-
“On-line Distributed Traffic Grooming.”
R. Jordan Crouser, Brian Rice, Adrian Sampson, and Ran Libeskind-Hadas.
In
ICC 2008.
Workshop Papers
-
“LambdaLab: An Interactive λ-Calculus Reducer for Learning.”
Daniel Sainati and Adrian Sampson.
In
SPLASH-E 2018.
-
“Debugging Probabilistic Programs.”
Chandrakana Nandi, Dan Grossman, Adrian Sampson, Todd Mytkowicz, and Kathryn S McKinley.
In
MAPL 2017 (co-located with PLDI).
-
“Rethinking the Camera Pipeline for Computer Vision.”
Mark Buckler, Suren Jayasuriya, and Adrian Sampson.
In
WAX 2017 (co-located with ASPLOS).
-
“The Case for Compulsory Approximation.”
Adrian Sampson.
In
WAX 2016 (co-located with ASPLOS).
-
“Approximating to the Last Bit.”
Thierry Moreau, Adrian Sampson, Luis Ceze, and Mark Oskin.
In
WAX 2016 (co-located with ASPLOS).
-
“REACT: A Framework for Rapid Exploration of Approximate Computing Techniques.”
Mark Wyse, Andre Baixo, Thierry Moreau, Bill Zorn, James Bornholt, Adrian Sampson, Luis Ceze, and Mark Oskin.
In
WAX 2015 (co-located with PLDI).
-
“Two Approximate-Programmability Birds, One Statistical-Inference Stone.”
Adrian Sampson.
In
APPROX 2014 (co-located with PLDI).
-
“Tuning Approximate Computations with Constraint-Based Type Inference.”
Brett Boston, Adrian Sampson, Dan Grossman, and Luis Ceze.
In
WACAS 2014 (co-located with APLOS).
-
“Approximate Semantics for Wirelessly Networked Applications.”
Benjamin Ransford, Adrian Sampson, and Luis Ceze.
In
WACAS 2014 (co-located with ASPLOS).
-
“Profiling and Autotuning for Energy-Aware Approximate Programming.”
Michael F. Ringenburg, Adrian Sampson, Luis Ceze, and Dan Grossman.
In
WACAS 2014 (co-located with ASPLOS).
-
“Design Tradeoffs of Approximate Analog Neural Accelerators.”
Renée St. Amant, Hadi Esmaeilzadeh, Adrian Sampson, Luis Ceze, Arjang Hassibi, and Doug Burger.
In
NIAC 2013.
-
“Addressing Dark Silicon Challenges with Disciplined Approximate Computing.”
Hadi Esmaeilzadeh, Adrian Sampson, Michael Ringenburg, Dan Grossman, Luis Ceze, and Doug Burger.
In
DaSi 2012 (co-located with ISCA).
-
“Towards Neural Acceleration for General-Purpose Approximate Computing.”
Hadi Esmaeilzadeh, Adrian Sampson, Luis Ceze, and Doug Burger.
In
WEED 2012 (co-located with ISCA).
-
“Greedy Coherence.”
Emily Fortuna, Brandon Lucia, Adrian Sampson, Benjamin Wood, and Luis Ceze.
In
HPPC 2011 (co-located with MICRO).
Other Stuff
-
“A Taxonomy of General Purpose Approximate Computing Techniques.”
Thierry Moreau, Joshua San Miguel, Mark Wyse, James Bornholt, Armin Alaghi, Luis Ceze, Natalie Enright Jerger, and Adrian Sampson.
In
IEEE Embedded Systems Letters.
-
“Approximate Computing: Unlocking Efficiency with Hardware–Software Co-Design.”
Luis Ceze and Adrian Sampson.
In
GetMobile, July 2016.
-
Hardware and Software for Approximate Computing.
Ph.D. dissertation.
-
“Approximate Computing: Making Mobile Systems More Efficient.”
Thierry Moreau, Adrian Sampson, and Luis Ceze.
In
IEEE Pervasive Computing, April/June 2015.
-
“Neural Acceleration for General-Purpose Approximate Programs.”
Hadi Esmaeilzadeh, Adrian Sampson, Luis Ceze, and Doug Burger.
In
CACM Research Highlights, January 2015.
-
“Approximate Storage in Solid-State Memories.”
Adrian Sampson, Jacob Nelson, Karin Strauss, and Luis Ceze.
In
ACM Transactions on Computer Systems, September 2014.
-
“EnerJ, the Language of Good-Enough Computing.”
Adrian Sampson, Luis Ceze, and Dan Grossman.
In
IEEE Spectrum, October 2013.
-
“Dense Approximate Storage in Phase-Change Memory.”
Jacob Nelson, Adrian Sampson, and Luis Ceze.
In
the Ideas & Perspectives session at ASPLOS 2011.