Evaluation of PyTorch as a Data-Parallel Programming API for GPU Volume Rendering

dc.contributor.authorMarshak, Nathan X.en_US
dc.contributor.authorGrosset, A. V. Pascalen_US
dc.contributor.authorKnoll, Aaronen_US
dc.contributor.authorAhrens, Jamesen_US
dc.contributor.authorJohnson, Chris R.en_US
dc.contributor.editorLarsen, Matthew and Sadlo, Filipen_US
dc.date.accessioned2021-06-12T11:26:07Z
dc.date.available2021-06-12T11:26:07Z
dc.date.issued2021
dc.description.abstractData-parallel programming (DPP) has attracted considerable interest from the visualization community, fostering major software initiatives such as VTK-m. However, there has been relatively little recent investigation of data-parallel APIs in higherlevel languages such as Python, which could help developers sidestep the need for low-level application programming in C++ and CUDA. Moreover, machine learning frameworks exposing data-parallel primitives, such as PyTorch and TensorFlow, have exploded in popularity, making them attractive platforms for parallel visualization and data analysis. In this work, we benchmark data-parallel primitives in PyTorch, and investigate its application to GPU volume rendering using two distinct DPP formulations: a parallel scan and reduce over the entire volume, and repeated application of data-parallel operators to an array of rays. We find that most relevant DPP primitives exhibit performance similar to a native CUDA library. However, our volume rendering implementation reveals that PyTorch is limited in expressiveness when compared to other DPP APIs. Furthermore, while render times are sufficient for an early ''proof of concept'', memory usage acutely limits scalability.en_US
dc.description.sectionheadersVolumes
dc.description.seriesinformationEurographics Symposium on Parallel Graphics and Visualization
dc.identifier.doi10.2312/pgv.20211041
dc.identifier.isbn978-3-03868-138-0
dc.identifier.issn1727-348X
dc.identifier.pages31-35
dc.identifier.urihttps://doi.org/10.2312/pgv.20211041
dc.identifier.urihttps://diglib.eg.org:443/handle/10.2312/pgv20211041
dc.publisherThe Eurographics Associationen_US
dc.subjectHuman centered computing
dc.subjectScientific visualization
dc.subjectComputing methodologies
dc.subjectParallel computing methodologies
dc.subjectRendering
dc.titleEvaluation of PyTorch as a Data-Parallel Programming API for GPU Volume Renderingen_US
Files
Original bundle
Now showing 1 - 3 of 3
Loading...
Thumbnail Image
Name:
031-035.pdf
Size:
798.4 KB
Format:
Adobe Portable Document Format
Loading...
Thumbnail Image
Name:
1029-file1.pdf
Size:
438.33 KB
Format:
Adobe Portable Document Format
No Thumbnail Available
Name:
1029-file2.zip
Size:
12.88 KB
Format:
Zip file