Aether: An Embedded Domain Specific Sampling Language for Monte Carlo Rendering

Research output: Contribution to journalArticle

Standard

Aether: An Embedded Domain Specific Sampling Language for Monte Carlo Rendering. / Anderson, Luke; Li, Tzu-Mao; Lehtinen, Jaakko; Durand, Fredo.

In: ACM Transactions on Graphics, Vol. 36, No. 4, 99, 07.2017, p. 1-16.

Research output: Contribution to journalArticle

Harvard

APA

Vancouver

Author

Anderson, Luke ; Li, Tzu-Mao ; Lehtinen, Jaakko ; Durand, Fredo. / Aether: An Embedded Domain Specific Sampling Language for Monte Carlo Rendering. In: ACM Transactions on Graphics. 2017 ; Vol. 36, No. 4. pp. 1-16.

Bibtex - Download

@article{1679223b925d4a039f135bb1aa0c92f9,
title = "Aether: An Embedded Domain Specific Sampling Language for Monte Carlo Rendering",
abstract = "Implementing Monte Carlo integration requires significant domain expertise. While simple samplers, such as unidirectional path tracing, are relatively forgiving, more complex algorithms, such as bidirectional path tracing or Metropolis methods, are notoriously difficult to implement correctly. We propose Aether, an embedded domain specific language for Monte Carlo integration, which offers primitives for writing concise and correct-by-construction sampling and probability code. The user is tasked with writing sampling code, while our compiler automatically generates the code necessary for evaluating PDFs as well as the book keeping and combination of multiple sampling strategies. Our language focuses on ease of implementation for rapid exploration, at the cost of run time performance. We demonstrate the effectiveness of the language by implementing several challenging rendering algorithms as well as a new algorithm, which would otherwise be prohibitively difficult.",
author = "Luke Anderson and Tzu-Mao Li and Jaakko Lehtinen and Fredo Durand",
year = "2017",
month = "7",
doi = "10.1145/3072959.3073704",
language = "English",
volume = "36",
pages = "1--16",
journal = "ACM Transactions on Graphics",
issn = "0730-0301",
number = "4",

}

RIS - Download

TY - JOUR

T1 - Aether: An Embedded Domain Specific Sampling Language for Monte Carlo Rendering

AU - Anderson, Luke

AU - Li, Tzu-Mao

AU - Lehtinen, Jaakko

AU - Durand, Fredo

PY - 2017/7

Y1 - 2017/7

N2 - Implementing Monte Carlo integration requires significant domain expertise. While simple samplers, such as unidirectional path tracing, are relatively forgiving, more complex algorithms, such as bidirectional path tracing or Metropolis methods, are notoriously difficult to implement correctly. We propose Aether, an embedded domain specific language for Monte Carlo integration, which offers primitives for writing concise and correct-by-construction sampling and probability code. The user is tasked with writing sampling code, while our compiler automatically generates the code necessary for evaluating PDFs as well as the book keeping and combination of multiple sampling strategies. Our language focuses on ease of implementation for rapid exploration, at the cost of run time performance. We demonstrate the effectiveness of the language by implementing several challenging rendering algorithms as well as a new algorithm, which would otherwise be prohibitively difficult.

AB - Implementing Monte Carlo integration requires significant domain expertise. While simple samplers, such as unidirectional path tracing, are relatively forgiving, more complex algorithms, such as bidirectional path tracing or Metropolis methods, are notoriously difficult to implement correctly. We propose Aether, an embedded domain specific language for Monte Carlo integration, which offers primitives for writing concise and correct-by-construction sampling and probability code. The user is tasked with writing sampling code, while our compiler automatically generates the code necessary for evaluating PDFs as well as the book keeping and combination of multiple sampling strategies. Our language focuses on ease of implementation for rapid exploration, at the cost of run time performance. We demonstrate the effectiveness of the language by implementing several challenging rendering algorithms as well as a new algorithm, which would otherwise be prohibitively difficult.

U2 - 10.1145/3072959.3073704

DO - 10.1145/3072959.3073704

M3 - Article

VL - 36

SP - 1

EP - 16

JO - ACM Transactions on Graphics

JF - ACM Transactions on Graphics

SN - 0730-0301

IS - 4

M1 - 99

ER -

ID: 16800078