In this community member profile, we would like to introduce Mihai Budiu, a researcher at VMware Research who is based in Palo Alto, California. He is an active contributor in the Open Networking Foundation’s P4 community.
Mihai holds a Computer Science, Ph.D, from Carnegie Mellon University and after graduate school was a researcher at Microsoft Research in Silicon Valley for 10 years. When the Microsoft lab was dismantled, in the fall of 2014, he joined Barefoot Networks. His role was to help design and implement a new version of the P4 language, which became later known as P4-16. He initiated (with Chriss Dodd) the development of the open source P4-16 compiler infrastructure. He left Barefoot after 18 months, and joined VMware Research. At VMware he has continued to support the P4 language as a core contributor to the open-source compiler and later as a co-chair of the P4 Language Design Working Group. He believes that not being associated with a P4 vendor makes it easier to make design decisions that are not influenced by short term interests.
Mihai has published papers, and has filed patents in the areas of (reverse chronological):
- Software-defined networking
- 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
Currently, in the area of networking, Mihai is working on a full-stack SDN toolkit called Nerpa, allowing one to program a network dataplane, control plane, and management plane. Nerpa is sponsored by VMware as an incubation project. This project is in collaboration with Debnil Sur, Ben Pfaff, and Leonid Ryzhyk. In addition, he also continues to work on the P4 compiler and on a P4 to OvS backend. To build the Nerpa control-plane the team has designed an incremental programming language called Differential Datalog, which has turned into a standalone project, which proved very useful for streaming data processing.
Something you might not know about Mihai…one of the most exotic projects that he worked on at Microsoft was the training of the Kinect body tracking algorithm (for this work he received a Technology Transfer award from Microsoft). Kinect was around 2009 a very popular add-on to the XBox game console, that would track the player's body using a depth camera. The body tracking algorithm takes images from the depth camera and has to label each pixel with a most likely body part for all humans in the frame (e.g., head, torso, arms, etc). This was before the advent of deep learning, and had to be done with very limited computational resources. (The depth camera in Kinect was built by a company called PrimeSense, which was acquired by Apple, and is now used in the face recognition sensor of the iPhone).
In his free time, Mihai also enjoys biking and playing the piano.