Efiective static bin patterns for sort-middle rendering

Bernhard Kerbl, Michael Kenzel, Dieter Schmalstieg, Markus Steinberger

Research output: Chapter in Book/Report/Conference proceedingConference contributionResearchpeer-review

Abstract

To effectively utilize an ever increasing number of processors during parallel rendering, hardware and software designers rely on sophisticated load balancing strategies. While dynamic load balancing is a powerful solution, it requires complex work distribution and synchronization mechanisms. Graphics hardware manufacturers have opted to employ static load balancing strategies instead. Specifically, triangle data is distributed to processors based on its overlap with screenspace tiles arranged in a fixed pattern. While the current strategy of using simple patterns for a small number of fast rasterizers achieves formidable performance, it is questionable how this approach will scale as the number of processors increases further. To address this issue, we analyze real-world rendering workloads, derive requirements for effective patterns, and present ten different pattern design strategies based on these requirements. In addition to a theoretical evaluation of these design strategies, we compare the performance of select patterns in a parallel sort-middle software rendering pipeline on an extensive set of triangle data captured from eight recent video games. As a result, we are able to identify a set of patterns that scale well and exhibit significantly improved performance over naïve approaches.

Original languageEnglish
Title of host publicationProceedings of High Performance Graphics, HPG 2017
PublisherAssociation of Computing Machinery
ISBN (Electronic)9781450351010
DOIs
Publication statusPublished - 28 Jul 2017
Event9th Conference on High Performance Graphics, HPG 2017 - Los Angeles, United States
Duration: 28 Jul 201730 Jul 2017

Conference

Conference9th Conference on High Performance Graphics, HPG 2017
CountryUnited States
CityLos Angeles
Period28/07/1730/07/17

Fingerprint

Bins
Resource allocation
Hardware
Tile
Dynamic loads
Synchronization
Pipelines

Keywords

  • GPU
  • Parallel rendering
  • Pattern
  • Sort-middle
  • Static load balancing

ASJC Scopus subject areas

  • Computer Graphics and Computer-Aided Design
  • Computer Vision and Pattern Recognition
  • Human-Computer Interaction

Cite this

Kerbl, B., Kenzel, M., Schmalstieg, D., & Steinberger, M. (2017). Efiective static bin patterns for sort-middle rendering. In Proceedings of High Performance Graphics, HPG 2017 [3105777] Association of Computing Machinery. https://doi.org/10.1145/3105762.3105777

Efiective static bin patterns for sort-middle rendering. / Kerbl, Bernhard; Kenzel, Michael; Schmalstieg, Dieter; Steinberger, Markus.

Proceedings of High Performance Graphics, HPG 2017. Association of Computing Machinery, 2017. 3105777.

Research output: Chapter in Book/Report/Conference proceedingConference contributionResearchpeer-review

Kerbl, B, Kenzel, M, Schmalstieg, D & Steinberger, M 2017, Efiective static bin patterns for sort-middle rendering. in Proceedings of High Performance Graphics, HPG 2017., 3105777, Association of Computing Machinery, 9th Conference on High Performance Graphics, HPG 2017, Los Angeles, United States, 28/07/17. https://doi.org/10.1145/3105762.3105777
Kerbl B, Kenzel M, Schmalstieg D, Steinberger M. Efiective static bin patterns for sort-middle rendering. In Proceedings of High Performance Graphics, HPG 2017. Association of Computing Machinery. 2017. 3105777 https://doi.org/10.1145/3105762.3105777
Kerbl, Bernhard ; Kenzel, Michael ; Schmalstieg, Dieter ; Steinberger, Markus. / Efiective static bin patterns for sort-middle rendering. Proceedings of High Performance Graphics, HPG 2017. Association of Computing Machinery, 2017.
@inproceedings{bd5f4576e83441ae814213b6c4bc154b,
title = "Efiective static bin patterns for sort-middle rendering",
abstract = "To effectively utilize an ever increasing number of processors during parallel rendering, hardware and software designers rely on sophisticated load balancing strategies. While dynamic load balancing is a powerful solution, it requires complex work distribution and synchronization mechanisms. Graphics hardware manufacturers have opted to employ static load balancing strategies instead. Specifically, triangle data is distributed to processors based on its overlap with screenspace tiles arranged in a fixed pattern. While the current strategy of using simple patterns for a small number of fast rasterizers achieves formidable performance, it is questionable how this approach will scale as the number of processors increases further. To address this issue, we analyze real-world rendering workloads, derive requirements for effective patterns, and present ten different pattern design strategies based on these requirements. In addition to a theoretical evaluation of these design strategies, we compare the performance of select patterns in a parallel sort-middle software rendering pipeline on an extensive set of triangle data captured from eight recent video games. As a result, we are able to identify a set of patterns that scale well and exhibit significantly improved performance over na{\"i}ve approaches.",
keywords = "GPU, Parallel rendering, Pattern, Sort-middle, Static load balancing",
author = "Bernhard Kerbl and Michael Kenzel and Dieter Schmalstieg and Markus Steinberger",
year = "2017",
month = "7",
day = "28",
doi = "10.1145/3105762.3105777",
language = "English",
booktitle = "Proceedings of High Performance Graphics, HPG 2017",
publisher = "Association of Computing Machinery",
address = "United States",

}

TY - GEN

T1 - Efiective static bin patterns for sort-middle rendering

AU - Kerbl, Bernhard

AU - Kenzel, Michael

AU - Schmalstieg, Dieter

AU - Steinberger, Markus

PY - 2017/7/28

Y1 - 2017/7/28

N2 - To effectively utilize an ever increasing number of processors during parallel rendering, hardware and software designers rely on sophisticated load balancing strategies. While dynamic load balancing is a powerful solution, it requires complex work distribution and synchronization mechanisms. Graphics hardware manufacturers have opted to employ static load balancing strategies instead. Specifically, triangle data is distributed to processors based on its overlap with screenspace tiles arranged in a fixed pattern. While the current strategy of using simple patterns for a small number of fast rasterizers achieves formidable performance, it is questionable how this approach will scale as the number of processors increases further. To address this issue, we analyze real-world rendering workloads, derive requirements for effective patterns, and present ten different pattern design strategies based on these requirements. In addition to a theoretical evaluation of these design strategies, we compare the performance of select patterns in a parallel sort-middle software rendering pipeline on an extensive set of triangle data captured from eight recent video games. As a result, we are able to identify a set of patterns that scale well and exhibit significantly improved performance over naïve approaches.

AB - To effectively utilize an ever increasing number of processors during parallel rendering, hardware and software designers rely on sophisticated load balancing strategies. While dynamic load balancing is a powerful solution, it requires complex work distribution and synchronization mechanisms. Graphics hardware manufacturers have opted to employ static load balancing strategies instead. Specifically, triangle data is distributed to processors based on its overlap with screenspace tiles arranged in a fixed pattern. While the current strategy of using simple patterns for a small number of fast rasterizers achieves formidable performance, it is questionable how this approach will scale as the number of processors increases further. To address this issue, we analyze real-world rendering workloads, derive requirements for effective patterns, and present ten different pattern design strategies based on these requirements. In addition to a theoretical evaluation of these design strategies, we compare the performance of select patterns in a parallel sort-middle software rendering pipeline on an extensive set of triangle data captured from eight recent video games. As a result, we are able to identify a set of patterns that scale well and exhibit significantly improved performance over naïve approaches.

KW - GPU

KW - Parallel rendering

KW - Pattern

KW - Sort-middle

KW - Static load balancing

UR - http://www.scopus.com/inward/record.url?scp=85028571351&partnerID=8YFLogxK

U2 - 10.1145/3105762.3105777

DO - 10.1145/3105762.3105777

M3 - Conference contribution

BT - Proceedings of High Performance Graphics, HPG 2017

PB - Association of Computing Machinery

ER -