CS 348C: Visualizing Computer Systems

Pat Hanrahan, Marc Levoy, Mendel Rosenblum



Virtual Places


This new course will explore the use of visualization to design and understand computers and computer systems. The premise is that computer systems are becoming more and more complex and that the tools used to design and monitor them need to be able to deal with the emerging complexity. Visualization is widely used in other scientific and engineering disciplines to help people understand the systems they study, but is relatively underutilized in computer science itself. The key intellectual challenge is to develop the right "visual metaphors" for conveying information about the system in the most effective way, and to implement systems for extracting and presenting the information to the user.


As in previous versions of CS 348C, this is a reading and project course. Readings and lectures will cover basic visualization principles and tools, and relevant work in the new field of information visualization, We will then discuss the application of these ideas to computer systems.

All students are expected to participate in discussion, write a short survey paper (roughly 10 pages), and do a project to visualize a computer system. Our goal in offering this course is to completely rethink how visualization is used to understand computer systems. The ideal student is one who is interested in exploring a new research area and has the motivation and initiative to identify the issues and important research directions. This person should also be interested in interdisciplinary research and interested in interacting with others with diverse backgrounds: visual design, graphics, interaction, networks, operating systems or computer architecture. The course is targeted to both graphics and systems students. Systems students who are actively involved in research that may benefit from visualization are particularly encouraged to attend.

This version of CS348C - unlike past offerings - cannot be taken for one unit since full participation by everybody is required if the course is to be successful. For this reason auditing is also not allowed.


The Structure of Scientific Revolutions (2nd ed.), Thomas Kuhn, Univ. of Chicago Press, 1970.

The Visual Display of Quantitative Information, Edward Tufte, Graphics Press, 1986.

Envisioning Information, Edward Tufte, Graphics Press, 1991. This book is required.

The Scientific Image, Harry Robin, Freeman and Company, 1992.

The Semiology of Graphics, Jacques Bertin, 1967.

Exploratory Data Analysis, John W. Tukey, 1977.

Visual Cues Peter Keller and Mary Keller, 1993.

Visualization, Richard Gallagher, 1995.

The Visualization Toolkit An Object-Oriented Approach to 3D Graphics, Will Schroeder, Ken Martin, and Bill Lorensen, Prentice Hall, 1995.

The Elements of Graphing Data, Revised Edition, William S. Cleveland, Hobart Press.

Plus about 10-12 papers that are required reading.


Copyright © 1996 Pat Hanrahan