Research

Areas and Themes

  • Big Data
  • Computer Architecture
  • Cloud Computing
  • Data Centers
  • Databases
  • Distributed Systems
  • Emerging Technologies
  • Energy Efficiency
  • Fault Tolerance
  • Mobile Computing
  • Nanotechnology
  • Networking
  • Operating Systems
  • Privacy
  • Security
  • and more

Computer Systems & Engineering (CSE) research is about addressing societal needs by creating and studying programmable platforms where abstractions play a critical role. Abstractions provide expressiveness (e.g., MapReduce for large data processing), hide complexity (e.g., folders for storing and accessing documents and data), and help manage connectedness, scale, energy, reliability, etc. Today’s sophisticated programmable systems are comprised of many interacting hardware and software components that range from the billions of transistors on a computer chip to the services and applications running on millions of computers connected to the Internet. Without the correct abstractions we could never create entities with the complexity of a single microprocessor, let alone manage the interaction of all the software running on today’s highly connected computational infrastructure. Abstractions can be created or modified to support new usage scenarios (e.g. cloud computing) or in response to disruptive changes of underlying technology (e.g., smart phones).

Defining and evaluating abstractions generally requires an experimental approach with an emphasis on creating or studying computational artifacts. Using a constructive approach, computer systems researchers evaluate abstractions by implementing (or accurately simulating) and using new abstractions in real systems. This may require developing new evaluation methodologies (e.g., simulators, metrics, application characterization, etc.). Determining if a system includes “the right” abstractions requires evaluation along several dimensions, such as, performance, scalability, energy efficiency, etc.; however, an equally important aspect of systems research is that the abstractions can be implemented efficiently. It is this latter requirement that amplifies the experimental aspect of systems research, since proper evaluation requires implementation. Duke systems researchers complement this experimental approach with formal methods when applicable.

The Duke CSE group is comprised of world-class faculty with research homes in traditional areas but with an agile intellectual approach that enables addressing important challenges across a wide variety of topics: such as cloud computing, security, mobile computing, sustainable/energy efficient computing, reliable computing, emerging technologies, and members of the group are exploring the CSE issues at the boundaries with emerging computational domains such as economics, journalism, social networking and the life sciences.