Share this page
Share this page E-mail this page Print this page RSS feeds
Home > Groups > System Research Group
Systems Research

System research group engages in fundamental system research that spans and bridges both theory and practice. Our charter is to design and build state-of-art and future systems that enrich computing and social experiences, enable scientific discoveries, and empower people to realize their full potentials. We focus on large-scale systems that power internet services and cloud computing, tools for building distributed systems, and new system architectures for emerging hardware and applications.

Distributed Systems and Large Scale Data Processing

In this area, our interest mainly focuses on the design and implementation of distributed storage systems, large-scale parallel data processing systems, debugging and verification mechanisms in such systems, as well as Peer-to-Peer systems and social networking systems. We have committed to understanding and solving system problems that arise from both the real world and from the experimental systems, ranging from protocols and algorithms to architectures and services involved in such systems. Besides publishing in leading researching conference and journals, we have also worked closely with product groups to help them build better systems.

WiDS: Distributed System Tools

No work can be done easily without handy tools. This is particularly true for system developers who build large-scale distributed systems, because these systems exhibit complex behaviors and suffer from subtle and yet serious bugs; manually detecting and removing all those bugs is hardly practical or feasible.

WiDS has been our long-time research investment that focuses on distributed system tools that span the system development and debugging cycles. Our goal is to build tools that help developers attack bugs more effectively and comprehensively, leading to systems that are more robust, reliable, and efficient.

We have built a bunch of tools using various debugging technologies, such as static analysis, model checking, and predicate checking. For example, MoDist is a transparent model checker that can systematically explore execution paths for a distributed system, effectively revealing bugs at corner cases; R2/iTarget is a lightweight recording and replay tool that can replay an execution deterministically and faithfully, enabling “time-travel debugging” for root cause analysis; D3S/CloudMeter enables predicate checking on a large, deployed system, allowing people to analyze its behaviors and detect anomaly with ease.

Emerging Hardware and System Architecture

In the System Research Group, we have been closely following the emerging computer architecture trends and are actively pursuing research directions to understand and leverage new hardware to improve the performance and reliability of computer systems. Our current projects encompass research on a wide range of new and exciting technologies. Some of the on-going projects include designing multi-core friendly operating systems; implementing next generation solid state storage systems and investigating their implications on OSes and user applications; leveraging multi-core microprocessor to accelerate program analysis and debugging; using reconfigurable hardware to accelerate database and Boolean Satisfiability (SAT) solving; and using Graphic Processing Unit (GPU) to accelerate the general-purpose computation".

Publications