Mihai Budiu's Web Page

About myself

Mihai Budiu
Mihai Budiu
Cell: (412) 216 8430
mbudiu (at) gmail
mbudiu (at) feldera.com
CV
mihaibudiu.github.io
github

During the years I have participated in the design and construction of several complex software artifacts. I like building systems based on strong theoretical foundations.

My research has spanned several broad areas of computer science:

  • Databases
  • Software-defined networking and P4
  • Cloud computing infrastructure: distributed computation platforms, monitoring, debugging, and performance analysis of large scale clusters
  • Big data analysis and visualization
  • Large scale machine learning
  • Computer security
  • Computer architecture
  • Programming language and compiler design and implementation
  • Reconfigurable hardware and hardware synthesis

Awards

2024 ACM SIGMOD Research Highlights award The paper DBSP: Incremental Computation on Streams and Its Applications to Databases is a simplified version of the DBSP VLDB 23 paper.
2023 VLDB Best paper award The paper DBSP: Automatic Incremental View Maintenance for Rich Query Languages.
2023 ISCA@50 25-year Retrospective 1996-2020 Two papers selected: NanoFabrics: spatial computing using molecular electronics, and PipeRench: A Coprocessor for Streaming Multimedia Acceleration
2022 VMWare Office of the CTO Award Transcending Limits in Innovation Differential Datalog programming language
2020P4 Distinguished service award From the Open Networking Foundation
2018 ACM SIGOPS Hall of Fame Award For the 2008 paper: DryadLINQ: A System for General-Purpose Distributed Data-Parallel Computing Using a High-Level Language.
2017 EuroSys Test of time Award For the 2007 paper: Dryad: Distributed Data-Parallel Programs from Sequential Building Blocks.
2015 ACM CCS Test of time Award For the 2005 paper: Control-Flow Integrity.
2014 ACM SIGARCH/IEEE-CS TCCA Influential ISCA Paper Award For the 1999 paper: PipeRench: a Coprocessor for Streaming Multimedia Acceleration.
2011 Churchill Club Silicon Valley award Magical Team For collaborative breakthroughs resulting in an irresistible product (Kinect); accepted award on behalf of Microsoft, together with Todd Holmdahl.
2010 Microsoft Technology Transfer Award For Training the Kinect Body Parts Classifier.
2008 ACM OSDI Best paper award For the paper DryadLINQ: A System for General-Purpose Distributed Data-Parallel Computing Using a High-Level Language.

Projects

Here are some projects that I have worked on:

Some interviews I took: Kurt Akeley, Chuck Thacker (later winner of the 2009 ACM Turing award), and Leslie Lamport (later winner of the 2014 ACM Turing award), Brian Kernighan and Bruce Maggs.


Some of my talks:

Streaming Queries without Compromise
video Streaming Meetup, LinkedIn, Mountain View, CA, April 24, 2024
DBSP: incremental evaluation for arbitrarily complex queries on data streams
DANI Seminar --- Google, Sunnyvale, CA, November 16, 2023
Streaming Incremental View Maintenance with Apache Calcite
Community over Code --- the Apache Software Foundation Conference, Hallifax, Nova Scotia, Canada, October 7, 2023
DBSP: Automatic Incremental View Maintenance for Rich Query Languages
video VLDB, Vancouver, Canada, August 30, 2023
Scaling a Declarative Cluster Manager Architecture with Query Optimization Techniques
VLDB, Vancouver, Canada, August 30, 2023
SQL to DBSP --- compiler architecture
Feldera Inc., Virtual presentation, June, 2023
What's new in P4-16
P4 Workshop, Intel, Santa Clara, CA, April 25, 2023
Building a streaming incremental view maintenance engine with Calcite
video Apache Calcite Meetup, virtual meeting, March 15, 2023
P4
GEANT (collaboration of European National Research and Education Networks), 10th SIG-NGN (Special Interest Group on Next Generation Networks) Meeting, November 29, 2022
DBSP: Automatic Incremental View Maintenance for Rich Query Languages
RISE/Sky seminar series, Berkeley University, September 2, 2022
Nerpa: Full-stack SDN
FlexNet workshop, Rice University, August 25, 2022
DBSP: Automatic Incremental View Maintenance for Rich Query Languages, Part II: advanced queries
Invited talk, Relational.ai, July 21, 2022
DBSP: Automatic Incremental View Maintenance for Rich Query Languages
Invited talk, Relational.ai, July 7, 2022
Distributed interactive big data visualization with Hillview
Have You Tried Rubbing a Database On It?, Virtual event, April 29, 2022
DBSP: Automatic Incremental View Maintenance for Rich Query Languages
Stanford Systems Seminar, Stanford University, April 12, 2022
Understanding the open-source P4-16 compiler
P4 Developer Days, online meeting, February 15, 2022
Differential Datalog (DDlog): A programming Language for Incremental Computation
VMWorld 2021, Virtual Event, August, 2021
Comparing P4 and EBPF
P4-ebpf task force, Virtual Presentation, January 21, 2021
Hillview: A trillion cell spreadsheet
Facebook, Menlo Park, CA, September 24, 2019
Differential Datalog
Stanford DAWN Retreat, Menlo Park, CA, September 11, 2019
Hillview: A Trillion-cell spreadsheet for big data
VLDB 2019, Los Angeles, CA, August 28, 2019
P4: Specifying data planes
Intel, Hillsboro, OR, July 10, 2018
Packet processing with P4 and EBPF
Intel TC/P4 workshop, Santa Clara, CA, June 8, 2018
The architecture of the P4-16 Compiler
P4 Workshop, Stanford, CA, May 17, 2017
A distributed billion-row spreadsheet
Laboratory for Computer Science seminar, Edinburgh University, Edinburgh, UK, Sept 11, 2016
Interacting with Large Distributed Datasets Using Sketch
Eurographics Symposium on Parallel Graphics and Visualization, Groningen, Netherlands, June 7, 2016
P4: Specifying data planes
Linux netdev01, Ottawa, Canada, February 15, 2015
Systems for Data-Intensive Cluster Computing
ALMADA Summer School, Moscow, Russia, July 30-August 7, 2013
Interactive Parallel Data Visualization and Exploration
Microsoft Research, Silicon Valley, Mountain View, CA, March 23, 2013
The Compiler Forest
Workshop on Exploiting Concurrency Efficiently and Correctly, Berkeley, CA, July 7, 2012
Playing with Big Data
HPDC 2012 Keynote Presentation, Delft, Netherlands, June 20, 2012
Monitoring and Debugging Clusters with Daphne
International Workshop on High-level Parallel Programming Models and Supportive Environments (HIPS), Anchorage, AK, May 20, 2011
DryadOpt: Branch-and-Bound on Distributed Data-Parallel Execution Engines
IEEE International Parallel and Distributed Processing Symposium (IPDPS), Anchorage, AK, May 19, 2011
The Kinect Body Tracking Pipeline
NASA Ames Reseach Center, Mountain View, CA, February 15, 2011
Hunting for Bugs with Artemis
USENIX Workshop on the Analysis of System Logs (WASL), San Diego, CA, December 7, 2008
Cluster Computing for the masses with DryadLINQ
Intel Research/UC Berkeley System Seminar Series, Intel Research, Berkeley, CA, October 9, 2008
Cluster Computing with Dryad
Microsoft Live Labs, Bellevue, WA, March 4, 2008
A Toolkit for Machine-Learning in DryadLINQ
Microsoft Research SVC, Mountain View, CA, January 30, 2008
Critical Path: A Tool for System-Level Timing Analysis
Microsoft Research SVC, Mountain View, CA, May 23, 2007
Architectural Support for Software-Based Protection
ASID 2006, San Jose, CA, October 21, 2006

Some of my papers

A complete publication list is in my my CV. Here's my dblp record. The copyrights of these publications are owned by various organizations, the papers are reproduced here for your convenience.
SIGMOD 24
bibtex
DBSP: Incremental Computation on Streams and Its Applications to Databases
Mihai Budiu, Tej Chajed, Frank McSherry, Leonid Ryzhyk, and Val Tannen
SIGMOD Research Highlights, Vol. 53, March, 2024
A shorter and simpler version of the VLDB 2023 DBSP paper.
VLDB 23
slides
bibtex
video
DBSP: Automatic Incremental View Maintenance for Rich Query Languages
Mihai Budiu, Tej Chajed, Frank McSherry, Leonid Ryzhyk, and Val Tannen
Proceedings of the VLDB Endowment (VLDB), Vancouver, Canada, August, 2023, pages 1601-1614
Best paper award. ACM SIGMOD Research Highlights Award.
VLDB 23
slides
bibtex
Scaling a Declarative Cluster Manager Architecture with Query Optimization Techniques
Kexin Rong, Mihai Budiu, Athinagoras Skiadopoulos, Lalith Suresh, and Amy Tai
Proceedings of the VLDB Endowment (VLDB), Vancouver, Canada, August, 2023, 2618–2631 pages
HOTNETS 22
bibtex
Full-Stack SDN
Debnil Sur, Ben Pfaff, Leonid Ryzhyk, and Mihai Budiu
ACM Workshop on Hot Topics in Networks (HotNets), Austin, TX, November 14-15, 2022
JPC 22
bibtex
Overlook: Differentially Private Exploratory Visualization for Big Data
Budiu, Mihai, Thaker, Pratiksha, Gopalan, Parikshit, Wieder, Udi, and Zaharia, Matei
Journal of Privacy and Confidentiality, Vol. 12, no 1, Jul., 2022
An expanded version of the conference paper from TPDP 2020.
P 422
bibtex
Nerpa: Network Programming with Relational and Procedural Abstractions
Debnil Sur, Ben Pfaff, Leonid Ryzhyk, and and Mihai Budiu
P4 Workshop, virtual event, May 24-26, 2022
P 422
bibtex
P4 in Open vSwitch with OFP4
Ben Pfaff, Debnil Sur, Leonid Ryzhyk, and Mihai Budiu
P4 Workshop, virtual event, May 24-26, 2022

bibtex
The P4-16 Language Specification, version 1.2.3
The P4.org consortium
July, 2022
TPDP 20
bibtex
Overlook: Differentially Private Exploratory Visualization for Big Data
Pratiksha Thaker, Mihai Budiu, Parikshit Gopalan, Udi Wieder, and Matei Zaharia
Theory and Practice of Differential Privacy (TPDP 2020), Orlando, FL, November 13, 2020
VLDB 19
slides
bibtex
Hillview: A trillion-cell spreadsheet for big data
Mihai Budiu, Parikshit Gopalan, Lalith Suresh, Udi Wieder, Han Kruiger, and Marcos K. Aguilera
Proceedings of the VLDB Endowment (VLDB), Los Angeles, CA, August, 2019, pages 1442-1457
A longer version available as https://arxiv.org/abs/1907.04827
DATALOG 19
bibtex
Differential Datalog
Leonid Ryzhyk and Mihai Budiu
Datalog 2.0, Philadelphia, PA, June 4-5, 2019
LPC 18
bibtex
P4C-XDP: Programming the Linux Kernel Forwarding Plane Using P4
William Tu, Fabian Ruffy, and Mihai Budiu
Linux Plumber's Conference, Vancouver, Canada, November 13-15, 2018
OSR 17
bibtex
The P4-16 Programming Language
Mihai Budiu and Chris Dodd
ACM SIGOPS Operating Systems Review, Vol. 51, no 1, August, 2017, pages 5-14
SIGCOMM 16
bibtex
Packet Transactions: High-level Programming for Line-Rate Switches
Anirudh Sivaraman, Alvin Cheung, Mihai Budiu, Changhoon Kim, Mohammad Alizadeh, Hari Balakrishnan, George Varghese, Nick McKeown, and Steve Licking
ACM SIGCOMM, Florianópolis, Brazil, August 22-26, 2016
EGPGV 16
slides
bibtex
video
Interacting with Large Distributed Datasets Using Sketch
Mihai Budiu, Rebecca Isaacs, Derek Murray, Gordon Plotkin, Paul Barham, Samer Al-Kiswany, Yazan Boshmaf, Qingzhou Luo, and Alexandr Andoni
Eurographics Symposium on Parallel Graphics and Visualization, Groningen, Netherlands, June 6-7, 2016, 13 pages
Also as University of Wisconsin-Madison Technical report TR1817
FESTSCHRIFT 14
bibtex
Multilinear Programming with Big Data
Mihai Budiu and Gordon Plotkin
Festschrift for Luca Cardelli, September, 2014
ESOP 13
bibtex
The Compiler Forest
Mihai Budiu, Joel Galenson, and Gordon Plotkin
European Symposium on Programming (ESOP), Rome, Italy, March 16-24, 2013, 20 pages
BIGLEARN 11
bibtex
Parallelizing the Training of the Kinect Body Parts Labeling Algorithm
Mihai Budiu, Jamie Shotton, Derek G. Murray, and Mark Finocchio
Big Learning: Algorithms, Systems and Tools for Learning at Scale, Sierra Nevada, Spain, December 16-17, 2011
SOSP 11
bibtex
Fay: Extensible Distributed Tracing from Kernels to Clusters
Úlfar Erlingsson, Marcus Peinado, Simon Peter, and Mihai Budiu
ACM Symposium on Operating Systems Principles (SOSP), Cascais, Portugal, October 23-26, 2011
CHAPTER 11
bibtex
Chapter in, Scaling Up Machine Learning
Frank McSherry, Yuan Yu, Mihai Budiu, Michael Isard, and Dennis Fetterly
Large-Scale Machine Learning using DryadLINQ, Cambridge University Press, 2011
OSDI 08
bibtex
video
DryadLINQ: A System for General-Purpose Distributed Data-Parallel Computing Using a High-Level Language
Yuan Yu, Michael Isard, Dennis Fetterly, Mihai Budiu, Úlfar Erlingsson, Pradeep Kumar Gunda, and Jon Currey
Symposium on Operating System Design and Implementation (OSDI), San Diego, CA, December 8-10, 2008, 14 pages
Best paper award. 2018 ACM SIGOPS Hall of Fame award. The video shows DryadLINQ used from Visual Studio.
DAC 07
slides
bibtex
Critical Path: A Tool for System-Level Timing Analysis
Girish Venkataramani, Tiberiu Chelcea, Mihai Budiu, and Seth C. Goldstein
Design Automation Conference (DAC), San Diego, CA, June 4-8, 2007
An expanded version is in the technical report CMU-CS-06-144
EUROSYS 07
bibtex
Dryad: Distributed Data-Parallel Programs from Sequential Building Blocks
Michael Isard, Mihai Budiu, Yuan Yu, Andrew Birrell, and Dennis Fetterly
European Conference on Computer Systems (EuroSys), Lisbon, Portugal, March 21-23, 2007, pages 59-72
Also as technical report MSR-TR-2006-140. EuroSys 2017 Test of Time Award.
ASID 06
slides
bibtex
Architectural Support for Software-Based Protection
Mihai Budiu, Úlfar Erlingsson, and Martín Abadi
Workshop on Architectural and System Support for Improving Software Dependability (ASID), San Jose, CA, October 21, 2006, pages 42-51
Also as technical report MSR-TR-2006-115
OSDI 06
bibtex
XFI: Software Guards for System Address Spaces
Úlfar Erlingsson, Martín Abadi, Michael Vrable, Mihai Budiu, and George C. Necula
Symposium on Operating System Design and Implementation (OSDI), Seattle, WA, November 6-8, 2006, pages 75-88
ASPLOS 06
bibtex
Tartan: Evaluating Spatial Computation For Whole Program Execution
Mahim Mishra, Timothy J. Callahan, Tiberiu Chelcea, Girish Venkataramani, Mihai Budiu, and Seth C. Goldstein
International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS), San Jose, CA, October 21-25, 2006, pages 163-174
CCS 05
bibtex
Control-Flow Integrity
Martín Abadi, Mihai Budiu, Úlfar Erlingsson, and Jay Ligatti
ACM Conference on Computer and Communication Security (CCS), Alexandria, VA, November 7-11, 2005, pages 340-353
CCS Test of Time Award in 2015
ASPLOS 04
slides
bibtex
Spatial Computation
Mihai Budiu, Girish Venkataramani, Tiberiu Chelcea, and Seth Copen Goldstein
International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS), Boston, MA, October 9-13, 2004, pages 14-26
ISCA 01
bibtex
NanoFabrics: Spatial Computing Using Molecular Electronics
Seth Copen Goldstein and Mihai Budiu
International Symposium on Computer Architecture (ISCA), Göteborg, Sweden, 2001, pages 178-189
Selected for inclusion in ISCA@50 25-year Retrospective 1996-2020.
ISCA 99
bibtex
PipeRench: a Coprocessor for Streaming Multimedia Acceleration
Seth Copen Goldstein, Herman Schmit, Matthew Moe, Mihai Budiu, Srihari Cadambi, R. Reed Taylor, and Ronald Laufer
International Symposium on Computer Architecture (ISCA), Atlanta, GA, 1999, pages 28-39
2014 ACM SIGARCH/IEEE-CS TCCA Influential ISCA Paper Award. Also Selected for inclusion in ISCA@50 25-year Retrospective 1996-2020.