2015
DOI: 10.1088/1742-6596/608/1/012055
|View full text |Cite
|
Sign up to set email alerts
|

Clad — Automatic Differentiation Using Clang and LLVM

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

0
12
0
1

Year Published

2019
2019
2023
2023

Publication Types

Select...
6

Relationship

0
6

Authors

Journals

citations
Cited by 15 publications
(13 citation statements)
references
References 12 publications
0
12
0
1
Order By: Relevance
“…Кроме того, это налагает определённые ограничения на используемый компилятор и затрудняет перенос на GPU. Хотя применение инструментов на основе source-to-source преобразований исходного кода при помощи специального компилятора выглядит перспективным направлением с практической точки зрения [100] и позволяет надеяться на внедрение HMC в расчётные системы в будущем. Кроме того, в работах [94] и [96] отмечается, что при наличии высокочастотных карт нормалей или карт смещений (имитация микрорельефа поверхности) дифференцирование не будет корректно работать.…”
Section: типы динамических системunclassified
“…Кроме того, это налагает определённые ограничения на используемый компилятор и затрудняет перенос на GPU. Хотя применение инструментов на основе source-to-source преобразований исходного кода при помощи специального компилятора выглядит перспективным направлением с практической точки зрения [100] и позволяет надеяться на внедрение HMC в расчётные системы в будущем. Кроме того, в работах [94] и [96] отмечается, что при наличии высокочастотных карт нормалей или карт смещений (имитация микрорельефа поверхности) дифференцирование не будет корректно работать.…”
Section: типы динамических системunclassified
“…Automatic differentiation in ROOT is based on Clad [5,6]. Clad is a source transformation AD tool for C++.…”
Section: Architecture and Implementationmentioning
confidence: 99%
“…Clad operates on Clang AST (abstract syntax tree) by analyzing the AST of the original function and generating the AST of the derivative. Clad provides two API functions: clad::differentiate for forward mode and clad::gradient for reverse mode, which can be used directly in the source code to mark a function for differentiation (see [6] for more details on usage and code examples).…”
Section: Architecture and Implementationmentioning
confidence: 99%
See 1 more Smart Citation
“…There is also a burgeoning research activity in AD for domain-specific and emerging languages. Examples include autodiff for Halide (Ragan-Kelley et al, 2013), JuliaDiff for Julia (Bezanson, Edelman, Karpinski, & Shah, 2017), and Clad as AD tool using Clang and LLVM (Vassilev, Vassilev, Penev, Moneta, & Ilieva, 2015). Tangent (van Merriënboer, Wiltschko, & Moldovan, 2017) can be used for the AD of code generated with the scripting language Python.…”
Section: High-level Implementations Of Admentioning
confidence: 99%