Spatial Partitioning for Distributed Path-Tracing Workloads

Spatial Partitioning for Distributed Path-Tracing Workloads

University of Calgary PRISM: University of Calgary's Digital Repository Graduate Studies The Vault: Electronic Theses and Dissertations 2018-09-21 Spatial Partitioning for Distributed Path-Tracing Workloads Hornbeck, Haysn Hornbeck, H. (2018). Spatial Partitioning for Distributed Path-Tracing Workloads (Unpublished master's thesis). University of Calgary, Calgary, AB. doi:10.11575/PRISM/33077 http://hdl.handle.net/1880/108724 master thesis University of Calgary graduate students retain copyright ownership and moral rights for their thesis. You may use this material in any way that is permitted by the Copyright Act or through licensing that has been assigned to the document. For uses that are not allowable under copyright legislation or licensing, you are required to seek permission. Downloaded from PRISM: https://prism.ucalgary.ca UNIVERSITY OF CALGARY Spatial Partitioning for Distributed Path-Tracing Workloads by Haysn Hornbeck A THESIS SUBMITTED TO THE FACULTY OF GRADUATE STUDIES IN PARTIAL FULFILLMENT OF THE REQUIREMENTS FOR THE DEGREE OF MASTER OF SCIENCE GRADUATE PROGRAM IN COMPUTER SCIENCE CALGARY, ALBERTA SEPTEMBER, 2018 c Haysn Hornbeck 2018 Abstract The literature on path tracing has rarely explored distributing workload using distinct spatial parti- tions. This thesis corrects that by describing seven algorithms which use Voronoi cells to partition scene data. They were tested by simulating their performance with real-world data, and fitting the results to a model of how such partitions should behave. Analysis shows that image-centric partitioning outperforms other algorithms, with a few exceptions, and restricting Voronoi centroid movement leads to more efficient algorithms. The restricted algorithms also demonstrate excellent scaling properties. Potential refinements are discussed, such as voxelization and locality, but the tested algorithms are worth further exploration. The details of an implementation are outlined, as well. ii Acknowledgements U. R. Alim, for extensive advice on testing and this thesis. Keynan Pratt, for introducing me to the Vivaldi algorithm. While I was working on spatial partitioning of path tracing before that moment, I lacked an algorithm for load balancing and was unsure of how to draw the bounds between nodes in the system. He didn’t intend to solve either problem while presenting Vivaldi, but I quickly realized its potential. It was later out-performed by other algorithms that I developed on my own, but his action still saved me substantial time and effort. Mea Wang, for allowing me to outline an implementation of this system as homework in one of her courses. iii Table of Contents Abstract ........................................... ii Acknowledgements .................................... iii Table of Contents . iv List of Tables . vi List of Figures . vii List of Symbols . x 1 Introduction . 1 1.1 Motivation . 5 1.2 Methodology Overview . 7 1.3 Summary of Contributions . 8 1.4 Thesis Organization . 9 2 Related Work . 10 2.1 Projection and Rasterization . 10 2.2 Ray Tracing and Radiosity . 12 2.3 Path Tracing . 14 2.4 Backwards Ray Tracing and Photon Mapping . 16 2.5 Acceleration Structures . 17 2.6 Load Balancing . 19 3 Spatial Partitioning . 22 3.1 System Overview . 22 3.1.1 The Vivaldi Algorithm . 26 3.2 Voronoi Cell Partitions . 30 3.2.1 Voronoi Diagrams . 30 3.2.2 Adjusting Partitions . 32 3.3 Challenges to Spatial Partitioning . 38 3.3.1 Unstable Partitions . 38 3.3.2 Network Bandwidth . 39 3.3.3 Unbiased Pixel Sampling . 40 3.3.4 Algorithm Tuning . 41 3.3.5 Alternatives to Vivaldi . 41 3.3.6 Initial Node Placement . 42 3.3.7 Node Movement Restrictions . 44 3.3.8 Damping . 47 3.3.9 Bundling Ray Data . 47 4 Simulation and Results . 48 4.1 Simulation Methodology . 48 4.2 Behavioural Metrics . 49 4.2.1 Statistical Modelling . 51 4.2.2 Ray Collisions . 52 4.2.3 Network Transmissions . 55 4.2.4 Node Movement . 57 4.2.5 Memory Cost . 58 iv 4.3 Key Metrics . 59 4.3.1 Generating the Posterior Distribution . 60 4.4 Results . 62 4.4.1 Collisions . 63 4.4.2 Test Scenes . 68 4.4.3 Network Transmission . 70 4.4.4 Node Position . 71 4.5 Comparisons to Other Techniques . 75 4.5.1 Visual Partitioning . 75 5 Future Work and Conclusion . 78 5.1 Summary . 78 5.2 Local Algorithms . 78 5.3 Additional Algorithms . 79 5.4 Voxelization . 79 5.5 Conclusions . 80 Bibliography . 81 A Additional Figures . 92 B Implementation Overview . 101 B.1 Requirements . 101 B.2 Operating Environment . 102 B.2.1 Master-Client vs. Peer-to-Peer . 103 B.2.2 Network Overview . 104 B.2.3 Nodes . 104 B.3 Scenes and Spaces . 104 B.3.1 Scene Log . 106 B.3.2 Data Management . 107 B.3.3 Security . 108 B.3.4 Backup . 109 B.3.5 Edit and Render Modes . 110 B.3.6 Consensus . 111 B.4 Rendering . 112 B.4.1 Render Pools . 114 B.4.2 Consolidating Renders . 115 C Network Packets . 116 C.1 Status Messages . 117 C.2 Public Keys . 119 C.3 Scene Logs . 120 C.4 Data . 123 C.5 Render Pools . 124 C.6 Rendering . 124 v List of Tables 3.1 Calculating certainties for Figure 3.5. Numbers have been rounded for presentation. 36 3.2 Repositioning Node 1, from Figure 3.5. 36 3.3 Bandwidth accounting for path segments. 39 4.1 Fitness to Model 2, collisions, by algorithm. Based on a subsample, some values are rounded for presentation. 63 4.2 Fitness to Model 3, network transmissions, by algorithm. The camera axis algo- rithm data is from a subsample, and the “free” algorithms are initialized with radial camera axis. Values are rounded for presentation. 72 4.3 The median, 16th and 84th percentiles from Model 5’s posterior, by algorithm. 77 A.1 Statistics for each of the seven scenes used in this paper. 92 A.2 The median, 16th and 84th percentiles from Model 2’s posterior, by algorithm. Based on a random subsample. ..

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    136 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us