My primary area of research is computer architecture, in particular scalable systems (shared memory multiprocessors and message passing clusters) and their interconnect structures (switching fabrics, system area networks, network interfaces and protocol engines). While research in multiprocessor systems has been going on for at least four decades, there are still many unsolved problems, particularly in the area of reliable systems. As the size of computing systems increases, so does their complexity and their susceptibility to failures. How to design hardware for large MP systems that is reliable, available and serviceable (RAS) is an ongoing research challenge that is complicated by ever changing implementation technologies.
I believe that research in computer architecture is best driven by concrete, real applications. In this context, I'm currently focused on a set of tough problems in the areas of image processing and scientific signal processing. Several vision projects in the robotics institute employ a multitude of cameras, producing prodigious amounts of data that must be processed in real-time. My long term research is directed at building a specialized microscope that is designed to map the nervous system of small biological specimens (see ONSIS project). This instrument will also produce very large amounts of data that must be processed in real time. This is a very interdisciplinary research projects that includes VLSI circuit design, fiber optics, sensor development, holography, lasers, RF electronics, micro-robotics, and applied computer science.
As a "hardware" person, I like to think about future technologies and their implications for computing architectures. For example, it is clear that the current paradigm of {superscalar, out-of-order, VLIW, SMT, etc.} processors is increasingly running into a complexity and verification wall. While the technology is steadily advancing to integrate 10^8, 10^9, ... transistors onto one chip, it is becoming exceedingly difficult to effectively use these transistors with traditional designs. I'm interested in the new computing structures that will overcome these problems (see my projects page).