Skip to content

Commit 8563c24

Browse files
PetroZarytskyivgvassilev
authored andcommitted
Update information about Petro Zarytskyi (#317)
1 parent ed30d7e commit 8563c24

File tree

7 files changed

+32
-6
lines changed

7 files changed

+32
-6
lines changed

.github/actions/spelling/allow/names.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ Atel
1212
Austeja
1313
Bellenot
1414
Bisht
15+
Bistrev
1516
Breitwieser
1617
Camolezi
1718
Cariappa

.github/actions/spelling/allow/terms.txt

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
AARCH
22
AIML
3-
Backpropagation
43
BGZF
4+
Backpropagation
55
CINT
66
CMSSW
77
Caa
@@ -13,6 +13,7 @@ GPT
1313
GSo
1414
GSoC
1515
HSF
16+
ICHEP
1617
IIT
1718
JIT'd
1819
Jacobians
@@ -35,6 +36,7 @@ TBR
3536
TFormula
3637
TTree
3738
aarch
39+
backpropagation
3840
biodynamo
3941
bioinformatics
4042
blogs

.github/actions/spelling/expect.txt

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
1-
Reoptimization
2-
Resugaring
3-
optimizing
1+
copyable
2+
Galin
43
genomics
4+
optimizing
5+
Reoptimization
56
reoptimization
7+
Resugaring
68
sustainability
79
transitioning

.github/actions/spelling/names.txt

Whitespace-only changes.

.github/actions/spelling/terms.txt

Whitespace-only changes.

_data/contributors.yml

Lines changed: 23 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -121,14 +121,35 @@
121121
[Final Report](/assets/docs/Aaron_Jomy_GSoC23_Report.pdf)
122122
123123
- name: Petro Zarytskyi
124-
info: "IRIS-HEP Fellow"
124+
info: "Google Summer of Code 2025 Contributor"
125125
photo: Petro.jpg
126126
127127
education: Applied Mathematics, Taras Shevchenko National University of Kyiv, Ukraine, 2021-present
128128
active: 1
129129
projects:
130-
- title: "Optimizing reverse-mode automatic differentiation with advanced activity-analysis"
130+
- title: "Improve automatic differentiation of object-oriented paradigms using Clad"
131131
status: Ongoing
132+
description: |
133+
Clad is a Clang plugin enabling automatic differentiation (AD) for C++ mathematical
134+
functions by modifying the abstract syntax tree using LLVM's compiler capabilities.
135+
It integrates into existing codebases without modifications and supports forward and
136+
reverse mode differentiation. Reverse mode is efficient for Machine Learning and
137+
inverse problems involving backpropagation.
138+
Reverse mode AD requires two passes: forward pass stores intermediate values, reverse
139+
pass computes derivatives. Currently, Clad only supports storing trivially copyable
140+
types for function call arguments, limiting support for C-style arrays and non-copyable
141+
types like unique pointers, constraining Object-Oriented Programming usage.
142+
The project aims to enhance Clad's capability to store intermediate values for non-copyable
143+
types. One of the challenges lies in determining which expressions are modified in nested
144+
functions, potentially requiring run-time memory location tracking, which can be inefficient.
145+
The solution involves enhancing To-Be-Recorded (TBR) analysis, currently limited with
146+
poor nested function call support and no pointer reassignment handling. Improved TBR
147+
analysis will enable predictable memory handling, generating optimal code, and
148+
supporting both non-copyable types and efficient storage of copyable structures.
149+
proposal: /assets/docs/Petro_Zarytskyi_Proposal_2025.pdf
150+
mentors: Vassil Vassilev, David Lange
151+
- title: "Optimizing reverse-mode automatic differentiation with advanced activity-analysis"
152+
status: Completed project
132153
description: |
133154
Clad is an automatic differentiation clang plugin for C++. It automatically
134155
generates code that computes derivatives of functions given by the user.
846 KB
Binary file not shown.

0 commit comments

Comments
 (0)