Témata prací (Výběr práce)Témata prací (Výběr práce)(verze: 385)
Detail práce
   Přihlásit přes CAS
Distribuované diferencovatelné vykreslování pro Mitsubu 3
Název práce v češtině: Distribuované diferencovatelné vykreslování pro Mitsubu 3
Název v anglickém jazyce: Distributed differentiable rendering for Mitsuba 3
Klíčová slova: distribuované vykreslování|Mitsuba 3|diferencovatelné vykreslování|cloud
Klíčová slova anglicky: distributed rendering|Mitsuba 3|differentiable rendering|cloud
Akademický rok vypsání: 2024/2025
Typ práce: diplomová práce
Jazyk práce:
Ústav: Katedra softwaru a výuky informatiky (32-KSVI)
Vedoucí / školitel: Mgr. Tomáš Iser, Ph.D.
Řešitel: skrytý - zadáno a potvrzeno stud. odd.
Datum přihlášení: 28.08.2024
Datum zadání: 29.08.2024
Datum potvrzení stud. oddělením: 30.08.2024
Konzultanti: Darryl Gouder, M.Sc.
Zásady pro vypracování
Mitsuba 3 is an open-source research renderer capable of high-performance local parallelization based on just-in-time (JIT) compilation of computation kernels for many-core CPUs (via LLVM) and GPUs (via CUDA/OptiX). However, its performance is always limited to only one machine and CPU/GPU, as Mitsuba 3 does not support execution on multiple machines or execution on CPU and GPU simultaneously. This limitation is common in research renderers and the goal of this thesis is to find a solution.

The student should implement a framework to allow distributed rendering for Mitsuba 3, and optionally other similar renderers, allowing it to run both on cloud-based providers of compute nodes and on local servers, for example within a university or company computational network. The implementation should include:

- A combined run-time load balancing:
- 1) Taking into account the computational performance, because the nodes may have different hardware (combinations of CPU and GPU of different speeds).
- 2) Taking into account local image quality metrics, because different regions of the renderer image may vary wildly in their complexity and variance (noise levels), so some regions may converge with a lower number of samples than other regions, and it would be wasteful to continue rendering such regions further.
- Real-time preview of the rendered scene, such that the user can see the progress and decide to manually stop the rendering.
- Support for differentiable (inverse) rendering, mainly the distributed framework should be compatible with inverse rendering optimization pipelines.
- Python-based API for ease of use and, if possible, integration with the Python API of Mitsuba 3.
- Ready-to-use Docker containers that can be easily deployed within a local network and within a chosen cloud infrastructure.
Seznam odborné literatury
[1] Alan Chalmers, Timothy Davis, and Erik Reinhard (Eds.). 2002. Practical parallel rendering. AK Peters, Natick, Mass.

[2] Holger Dammertz, Johannes Hanika, Alexander Keller, and Hendrik Lensch. 2010. A Hierarchical Automatic Stopping Condition for Monte Carlo Global Illumination. In Proc. of the WSCG 2010, 2010. 159–164. Retrieved from https://jo.dreggn.org/home/2009_stopping.pdf

[3] Wenzel Jakob et al. 2022. Mitsuba 3 renderer. Retrieved from https://mitsuba-renderer.org

[4] Yining Karl Li. Adaptive Sampling. Code & Visuals. Retrieved August 28, 2024 from https://blog.yiningkarlli.com/2015/03/adaptive-sampling.html
 
Univerzita Karlova | Informační systém UK