Distributed Systems for Computer Graphics
Computer graphics has yet to take advantage of the large-scale distributed systems of the past decade. With the exception of rendering, few graphics systems today are distributed. Instead, they run on powerful servers or, in the best case, a small cluster. Algorithms are designed for single hosts because distributing them is extremely hard. Unlike big data systems, which can logically partition data across keys, graphical systems typically have much more complex dependencies which are hard to distribute. However, the locality in these systems is not arbitrary, as it is typically bound to to a geometric representation of the problem. We are researching large-scale distributed systems that take advantage of this implicit locality to provide real-time, high performance graphics whose scale cannot be served by a few hosts. This research involves virtual world services such as queries and lookup, content simplification designed to load over a wide area network, and a runtime for distributed simulation. The Sirikata Project is designing and implementing an architecture for the virtual worlds of the future. Virtual worlds today exhibit properties that prevent success similar to applications such as the Web: they scale poorly, have centralized control, or cannot be easily extended. Our work focuses on solving the scalability challenges of virtual worlds by making geometric and physically based constraints an integral part of our architecture. Moreover, we address the issues of federation and extensibility by carefully separating the components of a virtual world, allowing each component to develop independently. Serving a virtual world over a wide area network involves not only new distributed, geometric lookup services, but also new content conditioning and optimization pipelines. The Nimbus project, in collaboration with the PhysBAM team at Stanford, is enabling modern graphics simulations to run on the computing cloud.

Sub-project pages
  • Meru, a distributed 3D virtual world platform
  • Sirikata, its open-source release


Ebb: A DSL for Physical Simulation on CPUs and GPUs.

Gilbert Louis Bernstein, Chinmayee Shah, Crystal Lemire, Zachary DeVito, Matthew Fisher, Philip Levis, Pat Hanrahan. In ACM Transactions on Graphics (TOG), Volume 35 Issue 2, 2016.

Web pageWWW PaperPaper

Instance-Aware Simplification of 3D Polygonal Meshes.

Tahir Azim, Ewen Cheslack-Postava and Philip Levis. In Proceedings of the IEEE International Conference on Multimedia and Expo (ICME), 2015.

Web pageWWW PaperPaper

Unsupervised Conversion of 3D models for Interactive Metaverses.

Jeff Terrace, Ewen Cheslack-Postava, Philip Levis and Michael Freedman. In Proceedings of the IEEE International Conference on Multimedia and Expo (ICME), 2012.

SlidesSlides Web pageWWW PaperPaper

A Scalable Server for 3D Metaverses.

Ewen Cheslack-Postava, Tahir Azim, Behram Mistree, Daniel Horn, Jeff Terrace, Philip Levis, and Michael Freedman. In Proceedings of the USENIX Annual Technical Conference (ATC), 2012.

SlidesSlides Web pageWWW PaperPaper

Emerson: Accessible Scripting for Applications in an Extensible Virtual World.

Behram Mistree, Bhupesh Chandra, Ewen Cheslack-Potava, Philip Levis, and David Gay. In Proceedings of the ACM international conference on Object oriented programming systems languages and applications (Onward), 2011.

Web pageWWW PaperPaper

Emerson: Scripting for Federated Virtual Worlds.

Bhupesh Chandra, Ewen Cheslack-Postava, Behram Mistree, Philip Levis, and David Gay. In Proceedings of the 15th International Conference on Computer Games: AI, Animation, Mobile, Interactive Multimedia, Educational & Serious Games (CGAMES), 2010.

SlidesSlides Web pageWWW PaperPaper
This work is funded by the National Science Foundation (NeTS-ANET Grants #0831163 and #0831374) and conducted in conjunction with the Intel Science and Technology Center -- Visual Computing.