!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! B O S T O N U N I V E R S I T Y Computer Science Department C O L L O Q U I U M An Optimizing Compiler for Relaxed Memory Consistency Models Jaejin Lee Computer Science and Engineering Department Michigan State University Wednesday, March 14 11:00 am (Coffee served at 10:45PM) Seminar Room / MCS 135 While memory consistency models has long been an interesting topic in the computer architecture community, the usability of memory consistency models, their impact on performance, and the compiler technology needed to optimize parallel programs are poorly understood in the programming languages and compilers community. A concrete example is the current Java memory model that is one of relaxed memory consistency models. The Java memory model is very difficult for programmers to understand, and there are several ways of interpreting it. This talk focuses on building an optimizing compiler for explicitly parallel shared memory programs that hides the underlying relaxed memory consistency model. The compiler presents an intuitive and natural memory consistency model (e.g., sequential consistency) to the programmer. It shifts the programmer's burden of considering the underlying machine architecture to the compiler itself so that it makes programming and debugging easier. Moreover, it provides correct compiler level optimizations that cannot be correctly applied to parallel programs by conventional compilers. The compiler uses Shasha and Snir's delay set analysis to hide the underlying relaxed memory consistency model. To extend classical compiler optimization techniques to parallel programs, it uses the Concurrent Static Single Assignment form and Concurrent Global Value Numbering. The compiler will serve as a testbed to prototype new memory consistency models at the language level, and to measure the effects of different memory models and different compiler optimizations on program performance. Bio: Jaejin Lee received his Ph.D. degree in Computer Science from the University of Illinois at Urbana-Champaign in 1999. He was a recipient of an IBM Cooperative Fellowship and a scholarship from the Korea Foundation for Advanced Studies during his Ph.D. study. He received an M.S. degree in Computer Science from Stanford University in 1995 and a B.S. degree in Physics from Seoul National University in 1991. He spent six months at the University of Illinois at Urbana-Champaign as a visiting lecturer and postdoctoral research associate. Currently, He is an assistant professor in the Computer Science and Engineering department at Michigan State University. Host: Richard West ------------------------------------------------------------------------------- For colloquium info, including directions, see http://cs-www.bu.edu/colloquium -------------------------------------------------------------------------------