Yuan Yu describes the programming model, the design, and the implementation of the DryadLINQ system.
DryadLINQ provides a simple, powerful, and elegant programming environment for large-scale data parallel computing. It combines the .NET Language Integrated Query (LINQ) and the Dryad distributed execution engine.
A DryadLINQ program is a sequential program (written in C#, VB, or F#) composed of LINQ expressions performing arbitrary side effect-free transformations on datasets, and can be written and debugged using standard .NET development tools.
The DryadLINQ system automatically and transparently translates the data-parallel portions of the program into a distributed execution plan and executes it using the Dryad execution engine, which ensures reliable, scalable execution of the plan.
Yuan Yu is a senior researcher at Microsoft Research Silicon Valley lab, where he currently works in the area of large-scale parallel and distributed computing. For the six years he has been with Microsoft, he has been the project leader and primary contributor to the TLC model checker, the RaceTrack race detection tool, and the DryadLINQ data-parallel programming environment. Yuan joined Microsoft in 2002.
Previously, he was a senior member of technical staff at the DEC/Compaq Systems Research Center, working on model checking, software configuration management system, and multiprocessor cache
coherence protocols. Yuan has a Ph.D. in Applied Mathematics from University of Texas at Austin and a B.S. in Computer Science from Jilin University of China.