Prescience Lab

Department of Electrical Engineering and Computer Science
Northwestern University

Welcome to the Prescience Lab, the research group of Peter Dinda. At the highest level of abstraction, our goal is to learn how to deliver arbitrary amounts of computational power to ordinary people. To us, "ordinary people" implies interactive applications and "arbitrary amounts of computational power" implies distributed computing resources. A distributed interactive application must dynamically adapt its behavior to maintain a consistent, responsive, and pleasurable experience for its users at a reasonable cost.

Our research seeks to answer the following four questions:

  • How do we build adaptive distributed interactive applications effectively?
  • How does the demand for resources in these applications vary over time?
  • How does the supply of resources vary over time?
  • How can we use the adaptation mechanisms exposed by an application to match its resource demand with resource supply?
  • The Prescience Lab is a part of the CES Division of EECS and is also affiliated with CUCIS. It's "prescience" as via the Latin praescientia.

    Members

  • Peter A. Dinda, Professor
  • Lei Xia, Ph.D. student
  • Chang Bae, Ph.D. student
  • James Swaine, Ph.D. student (co-advised with Robby Findler) (M.S. Thesis)
  • Jaime Espinosa, Ph.D. student
  • Kyle Hale, Ph.D. student
  • Maciej Swiech, Ph.D. Student
  • Madhav Suresh, Undergraduate Student
  • Distinguished Former Members

  • Stephen Tarzia, (Ph.D., 2011, Now at VaporStream) (Ph.D. Thesis)
  • Jack Lange, (Ph.D., 2010. Now a CS professor at the University of Pittsburgh) (Ph.D. Thesis)
  • Yuan Tang, visiting scholar, University of Electronic Science and Technology of China (UESTC)
  • Ashish Gupta, (Ph.D., 2008. Now at D.E. Shaw) (Ph.D. Thesis)
  • Bin Lin (Ph.D., 2007. Now at Apple) (Ph.D. Thesis)
  • Ananth Sundararaj (Ph.D., 2006. Now at Microsoft) (Ph.D. Thesis)
  • Dong Lu (Ph.D., 2005. Now at Barclays Capital) (Ph.D. Thesis)
  • Tim Zwiebel, (M.S., 2009. Now at Google) (M.S. Thesis)
  • J. Scott Miller (M.S., 2009. Now at ZS Associates)
  • Jason Skicewicz (M.S., 2006, Ph.D. ABD, founder of Shacked Software)
  • Andy Gocke, Jason Lee, Jori Hardman, Brad Weinberger, Prem Seetharaman, Nick Pizzolato, John Shawger, Rumou Duan, Dave Huber, Jay Bruins, Sam Rossoff, Brian Cornell, Rachel Gold, Alex Shoykhet, Mike Knop, Andrew Weinrich, Luka Spoljaric, Jeff Kwiat, Curtis Barrett, Jim Trieu, Sam Benediktson, Aja Nichols, Yi Qiao, Ricky Chen, David Zhao, Kevin Dill, Budyanto Himawan, Jason Moy, Matt Lineen, Matt Zielinski, Blair Heuer, Ben Prosnitz, Brandon O'Bryant
  • Current Projects

  • ESP: The Empathic Systems Project
  • V3VEE: An Open Source Virtual Machine Monitor For Modern Architectures
  • ABSYNTH: Sensor Network Programming Systems For Non-experts
  • Virtuoso: Resource Management and Prediction for Distributed Computing Using Virtual Machines
  • Clairvoyance: Resource Measurement and Prediction for Distributed Interactive Applications
  • Peer-to-Peer Systems
  • Completed Projects

  • User Comfort: Understanding User Comfort With Resource Borrowing (This has become the Empathic Systems Project)
  • URGIS: A Unified Relational Approach to Grid Information Services
  • GA-IDS: Genetic Art For Intrusion Detection
  • Virtualized Audio: Immersive Interactive Audio
  • Minet: A user-level TCP/IP stack
  • Tsunami: Multiresolution Resource Queries and Other Applications of Wavelets to Resource Signals
  • WatchTower: Windows Performance Monitoring and Data Reduction
  • Diffusion: Zero Cost Information Dissemination
  • RTSA: Real-time Scheduling Advisors
  • Publications

    Recent talks and papers can be found under each of the individual projects. Additional talks and additional papers are also available.

    Systems

  • Batphone: An iOS app for acoustic-based indoor localization.
  • Sonar Power Manager: Ultrasonic sonar-based user presence detection
  • Palacios: An open-source virtual machine monitor for modern architectures
  • RPS: An extensible toolkit for building resource prediction systems. The Running Time Advisor and Real-time Scheduling Advisor codes are also included.
  • Playload: A tool for playing back realistic CPU workloads stored in host load traces.
  • Minet: A user-level network stack.
  • Linux Diffusion: Tools for piggybacking extra information on packets
  • GridG: A generator of computational grids
  • TameParallelTCP: Estimate throughput and impact of parallel TCP flows
  • Virtuoso Tools: VNET, VSched, Wayback and others
  • Data

  • Host Load Trace Archive: About one gigabyte of host load traces.
  • Resources

  • V3VEE Development Environment (Internal Only)
  • ABSYNTH Sensor Network Environment
  • Honeynut Cluster (nee Virtuoso Cluster)
  • Distributed Optical Testbed (DOT Cluster)
  • PlanetLab
  • VLab (for systems education)