Research

The high level goal of my research is to make computation as efficient (i.e., more work per joule) as possible in a commercially feasible manner. I'm currently focusing on accomplishing this by improving programmer productivity for heterogeneous many-core architectures. Here's a brief PowerPoint presentation highlighting how I propose to do this.

The computer industry has historically provided exponentially increasing computational power from their designs. This is important because cool applications that consumers demand require this computational power. Recently, however, the power wall has forced industry to abandon its time-tested approach of providing more computation through complex uni-core processors. Currently, the most popular technique is homogeneous many-core processors, where additional computational power is provided through many, simpler cores. These systems are still very inefficient for many important workloads.

An increasingly popular approach to provide efficient computational power is through hardware customization, one focus of my work. Here are some of the projects I am (or have been) interested in working on.

Customized Architectures/Accelerators

Accelerator Virtualization

Compilation for Accelerators

plants