I-Ting Angelina Lee

(Computer Science and Artificial Intelligence Laboratory (CSAIL) at MIT )

"Linguistic and System Support for Structured Parallel Programming"

(Vortrag im Rahmen der "MPI Distinguished Lecture Series" in Kooperation mit dem Fachbereich Informatik)

Parallel programming is hard. Most parallel programs today deal with the complexities of parallel programming, such as scheduling and synchronization, using low-level system primitives such as pthreads, locks, and condition variables. Although these low-level primitives are flexible, like goto statements, they lack structure and make it difficult for the programmer to reason locally about the program state. Just as goto has been mostly deprecated in ordinary serial programming in favor of structured control constructs, we can simplify parallel programming by replacing these low-level concurrency primitives with linguistic constructs that enable well structured parallel programs. Of course, elegant linguistic structure is only half the battle. The underlying system must also efficiently support the linguistics, allowing the programmer to write fast code.

I have developed several new parallel linguistic constructs and devised new, more efficient runtime support for other constructs invented by others. In this talk, I will focus largely on one example: a pipe_while construct that supports pipeline parallelism, a programming pattern commonly used in streaming applications. This example provides a case study of how well-designed linguistics for structured parallel programming can simplify parallel programming while allowing the runtime system to execute the linguistic model efficiently. This work has had some impact since its publication --- Intel released an experimental branch of Cilk Plus that incorporates support for parallel pipelining based on this work. I will also mention other examples from my research to demonstrate how novel mechanisms in operating systems and hardware, not just the runtime, can help provide efficient support for parallel-programming linguistics.

Bio: I-Ting Angelina Lee is a postdoctoral associate in the Computer Science and Artificial Intelligence Laboratory (CSAIL) at MIT, working with Prof. Charles E. Leiserson. Her areas of interest include designing linguistics for parallel programming, developing runtime system support for multithreaded software, and building novel mechanisms in operating systems and hardware to efficiently support parallel abstractions. Her work on "memory-mapped reducers" won best paper at SPAA 2012. She received her Ph.D. from MIT in 2012 under the supervision of Prof. Charles E. Leiserson. She received her Bachelor of Science in Computer Science from UC San Diego in 2003.

Time: Monday, 11.03.2014, 10:30 pm
Place: MPI-SWS Kaiserslauternn, room 113
Video: Simultaneous video cast to MPI-SWS Saarbrücken, room 029