Research

My main research focus is on developing compiler algorithms, runtime systems, and tools that enable programmers to use a high-level programming style and modern languages, and yet still achieve high performance on scalar, parallel, and distributed architectures. I am particularly interested in effectively using processor memory hierarchies, and in memory management. My other main interest is what the division of labor between the architecture and compiler should be for next generation architectures such as TRIPS.

Current Research Groups and Projects

  • Speedway Group: Compiler and Programming Languange Research Group

  • DaCapo: Dynamic Cooperative Performance Optimization for Java

  • TRIPS The Tera-op Reliable Intelligently adaptive Processing System

  • Scale: A Compiler for a Moving Target
  • My research group is currently supported by NSF grants CNS-0719966, CCF-0429859, EIA-0303609, CSR-0615104, DARPA grant F33615-03-C-4106, Intel, IBM, CISCO, and Microsoft.

    Dormant Projects

  • Impulse: Building a smarter memory controller.
  • Compiler optimizations for shared-memory parallel architectures
  • Distributed and parallel information retreival
  • ParaScope: An Interactive Parallelization Tool