Automatically distributing and load balancing graphical fluid simulations

Placeholder Show Content

Abstract/Contents

Abstract
Distributing graphical fluid simulations across many machines enables faster and more detailed simulations. However, distributing these simulations efficiently is challenging. First, it requires writing efficient distributed simulation code. Graphical fluid simulations use many diverse, novel and optimized data structures. Existing production libraries contain code developed over decades. It is important to leave low level control over simulation data structures to applications, in order to support these different data structures and existing libraries. Second, even with well written code, it is necessary to distribute work evenly in order to run the simulation efficiently. Fluid simulations exhibit spatial and temporal variation in fluid distribution and computational load. This makes distributing work evenly difficult. Optimal decision making requires knowing future computational load, but computing this state automatically for an arbitrary simulation requires running the simulation itself. As a result, many simulations use a manually specified partitioning, a heuristic, or a reactive approach based on the current load. This dissertation shows that using coarse grained geometric descriptions about data and computations, it is possible for a system to automatically distribute such simulations efficiently by addressing these two challenges. It presents a four layer data model that allows a high level framework to automatically distribute grid-based and hybrid simulations over application owned data structures, and proposes a new approach, speculative load balancing to automatically distribute work evenly. The four layer data model supports complex data structures by providing a simple, geometric abstraction to the simulation author and library. It uses geometric information to translate between geometric views and disjoint system views for efficiently analyzing and enforcing dependencies, and to assemble complex application objects containing data in the format that the simulation library expects from underlying system objects. Speculative load balancing runs the same sequence of computations over a lower resolution grid to estimate future load, and uses these estimates to distribute work evenly. The lower resolution simulation runs orders of magnitude faster and adds negligible execution time overhead. Experimental results show that speculative load balancing outperforms traditional ways of distributing work.

Description

Type of resource text
Form electronic resource; remote; computer; online resource
Extent 1 online resource.
Place California
Place [Stanford, California]
Publisher [Stanford University]
Copyright date 2018; ©2018
Publication date 2018; 2018
Issuance monographic
Language English

Creators/Contributors

Author Shah, Chinmayee Yogesh
Degree supervisor Levis, Philip
Thesis advisor Levis, Philip
Thesis advisor Aiken, Alexander
Thesis advisor Fedkiw, Ronald P, 1968-
Degree committee member Aiken, Alexander
Degree committee member Fedkiw, Ronald P, 1968-
Associated with Stanford University, Department of Electrical Engineering.

Subjects

Genre Theses
Genre Text

Bibliographic information

Statement of responsibility Chinmayee Shah.
Note Submitted to the Department of Electrical Engineering.
Thesis Thesis Ph.D. Stanford University 2018.
Location electronic resource

Access conditions

Copyright
© 2018 by Chinmayee Yogesh Shah
License
This work is licensed under a Creative Commons Attribution Non Commercial 3.0 Unported license (CC BY-NC).

Also listed in

Loading usage metrics...