Progressive Photon Mapping on GPUs
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Et stort bidrag fra denne oppgaven er å demonstrere hvordan nylige utvidelser av photon mapping-metoden kan brukes til å generere et bilde med bruk av flere skjermkort samtidig. Våre resultater viser at vi får nær lineær speedup ved bruk av opp til seks GPU-er i et distribuert system. Vi kan sende ut 18 millioner fotoner per sekund fra lyskildene med seks Nvidia GTX 480 samtidig. Bilder av våre testscener med lite støy genereres i løpet av få minutter. Vår implementasjon kan enkelt utvides for å støtte en klynge av skjermkort.
iii
NDRAG
Fysisk-basert rendering ved bruk av stråle-simulering kan produsere realistiske bilder av en mye høyere kvalitet enn andre metoder. Dessverre er beregningskostnadene knyttet til utforskning av lysbaner store: det kan ta mange timer å generere bilder av kompliserte scener og effekter. Bruk av skjermkort (GPU) for å akselerere denne prosessen har blitt svært populært de siste årene. Lanseringen av bibliotek og verktøy som Nvidias CUDA og OptiX gjør prosesseringskraften til moderne skjermkort tilgjengelig for flere.
A major contribution of this thesis is to demonstrate how recent advances in photon mapping can be used to render an image using many GPUs simultaneously. Our results show that we are able to get close to linear speedup employing up to six GPUs in a distributed system. We can emit up to 18 million photons per second on six Nvidia GTX 480 and generate images of our test scenes with little to no noise in a few minutes. Our implementation is straightforward to extend to a cluster of GPUs.
Norwegian University of Science and Technology Department of Computer and Information Science
PROJECT DESCRIPTION
Progressive Photon Mapping on GPUs Ray tracing is a method capable of producing much more realistic images than rasterization. Global illumination methods consider both illumination directly from light sources, as well as reflections from other surfaces in the scene. However, the computational costs associated with exploring all paths of light are huge; it can take hours to render high quality images of complex scenes.
The application is extended to support volumetric effects like fog and smoke. Our implementation is tested on a set of benchmark scenes exhibiting phenomenon like global illumination, reflections and refractions, and participating volumetric media.
Dette prosjektet inneholder en gjennomgang av aktuelle teknikker basert på “photon mapping”. Vi presenterer en komplett applikasjon som kjører i sin helhet på skjermkortet. Flere alternativer for datastrukturer i “photon mapping” er testet og vurdert. Å oppdele scenen i et rutenett og så sortere fotonene viser seg å være raskt å konsturere, og effektivt å bruke.
Taking advantage of the computational power of modern GPUs, Nvidia OptiX, a generic GPU ray tracing engine, runs on top of the Nvidia CUDA parallel computing architecture. This project will investigate how well global illumination calculations using a recent technique known as memoryless progressive photon mapping can be off-loaded onto GPUs. This will be done by implementing the method in the Nvidia OptiX ray-tracing framework, and comparing its strengths and weaknesses to the original progressive photon mapping algorithm. Demonstrating effects such as depth-of-field and/or motion blur, and discussion of pros and cons will be included. In addition, volumetric (participating media) effects like smoke and fog will be considered, with the aim of implementing it in the NTNU HPC-lab Snow Simulator. If time permits, the thesis will pursue creating a CUDA implementation of the algorithm and compare it with to OptiX with regards to speed, especially on multi-GPU systems.
Vår applikasjon er så utvidet for å støtte volumetriske effekter som røyk og tåke. Vi tester vår implementasjon på et sett av testscener som demonstrerer global illuminasjon, refleksjoner og refraksjoner, og volumetriske media.
Progressive Photon Mapping on GPUs
Stian Aaraas Pedersen
Master of Science in Computer Science
Submission date: June 2013
Supervisor:
Anne Cathrine Elster, IDI
v
ACKNOWLEDGMENTS I would like to thank Dr. Anne Cathrine Elster for supervising me for the duration of this Master’s thesis, for invaluable feedback on this report, and also for her efforts as a manager of the NTNU HPC-lab. The HPC-lab certainly would not exist if it wasn’t for her. Special thanks go out to all the supporters of the HPClab, especially Nvidia which on several occasions has donated graphics cards and resources through their CUDA Research Center and CUDA Teaching Center programs. The work carried out in this project would not been possible without their support.
This project includes an overview of current photon mapping techniques. We present a complete render application based on photon mapping which runs entirely on the GPU. Several different photon map implementations suitable for modern GPU architectures are considered and evaluated. A uniform grid approach based on photon sorting on the GPU is found to be fast to construct and efficient for photon gathering.
i
ABSTRACT
Physically based rendering using ray tracing is capable of producing realistic images of much higher quality than other methods. However, the computational costs associated with exploring all paths of light are huge; it can take hours to render high quality images of complex scenes. Using graphics processing units has emerged as a popular way to speed up this process. The recent appearance of libraries like Nvidia’s CUDA and OptiX make the processing power of modern GPUs more available than ever before.
iii
NDRAG
Fysisk-basert rendering ved bruk av stråle-simulering kan produsere realistiske bilder av en mye høyere kvalitet enn andre metoder. Dessverre er beregningskostnadene knyttet til utforskning av lysbaner store: det kan ta mange timer å generere bilder av kompliserte scener og effekter. Bruk av skjermkort (GPU) for å akselerere denne prosessen har blitt svært populært de siste årene. Lanseringen av bibliotek og verktøy som Nvidias CUDA og OptiX gjør prosesseringskraften til moderne skjermkort tilgjengelig for flere.
A major contribution of this thesis is to demonstrate how recent advances in photon mapping can be used to render an image using many GPUs simultaneously. Our results show that we are able to get close to linear speedup employing up to six GPUs in a distributed system. We can emit up to 18 million photons per second on six Nvidia GTX 480 and generate images of our test scenes with little to no noise in a few minutes. Our implementation is straightforward to extend to a cluster of GPUs.
Norwegian University of Science and Technology Department of Computer and Information Science
PROJECT DESCRIPTION
Progressive Photon Mapping on GPUs Ray tracing is a method capable of producing much more realistic images than rasterization. Global illumination methods consider both illumination directly from light sources, as well as reflections from other surfaces in the scene. However, the computational costs associated with exploring all paths of light are huge; it can take hours to render high quality images of complex scenes.
The application is extended to support volumetric effects like fog and smoke. Our implementation is tested on a set of benchmark scenes exhibiting phenomenon like global illumination, reflections and refractions, and participating volumetric media.
Dette prosjektet inneholder en gjennomgang av aktuelle teknikker basert på “photon mapping”. Vi presenterer en komplett applikasjon som kjører i sin helhet på skjermkortet. Flere alternativer for datastrukturer i “photon mapping” er testet og vurdert. Å oppdele scenen i et rutenett og så sortere fotonene viser seg å være raskt å konsturere, og effektivt å bruke.
Taking advantage of the computational power of modern GPUs, Nvidia OptiX, a generic GPU ray tracing engine, runs on top of the Nvidia CUDA parallel computing architecture. This project will investigate how well global illumination calculations using a recent technique known as memoryless progressive photon mapping can be off-loaded onto GPUs. This will be done by implementing the method in the Nvidia OptiX ray-tracing framework, and comparing its strengths and weaknesses to the original progressive photon mapping algorithm. Demonstrating effects such as depth-of-field and/or motion blur, and discussion of pros and cons will be included. In addition, volumetric (participating media) effects like smoke and fog will be considered, with the aim of implementing it in the NTNU HPC-lab Snow Simulator. If time permits, the thesis will pursue creating a CUDA implementation of the algorithm and compare it with to OptiX with regards to speed, especially on multi-GPU systems.
Vår applikasjon er så utvidet for å støtte volumetriske effekter som røyk og tåke. Vi tester vår implementasjon på et sett av testscener som demonstrerer global illuminasjon, refleksjoner og refraksjoner, og volumetriske media.
Progressive Photon Mapping on GPUs
Stian Aaraas Pedersen
Master of Science in Computer Science
Submission date: June 2013
Supervisor:
Anne Cathrine Elster, IDI
v
ACKNOWLEDGMENTS I would like to thank Dr. Anne Cathrine Elster for supervising me for the duration of this Master’s thesis, for invaluable feedback on this report, and also for her efforts as a manager of the NTNU HPC-lab. The HPC-lab certainly would not exist if it wasn’t for her. Special thanks go out to all the supporters of the HPClab, especially Nvidia which on several occasions has donated graphics cards and resources through their CUDA Research Center and CUDA Teaching Center programs. The work carried out in this project would not been possible without their support.
This project includes an overview of current photon mapping techniques. We present a complete render application based on photon mapping which runs entirely on the GPU. Several different photon map implementations suitable for modern GPU architectures are considered and evaluated. A uniform grid approach based on photon sorting on the GPU is found to be fast to construct and efficient for photon gathering.
i
ABSTRACT
Physically based rendering using ray tracing is capable of producing realistic images of much higher quality than other methods. However, the computational costs associated with exploring all paths of light are huge; it can take hours to render high quality images of complex scenes. Using graphics processing units has emerged as a popular way to speed up this process. The recent appearance of libraries like Nvidia’s CUDA and OptiX make the processing power of modern GPUs more available than ever before.