Skip to content

Commit 00d18dc

Browse files
authored
Merge branch 'master' into add-gsoc-details
2 parents 6b0bfb1 + 1959b24 commit 00d18dc

16 files changed

+112
-5
lines changed

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

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@ Isemann
3333
JLange
3434
Jomy
3535
Joshi
36+
Jurgaityt
3637
Kyiv
3738
LBNL
3839
Lattner
@@ -124,6 +125,7 @@ christinakoutsou
124125
daemond
125126
daemondzh
126127
davidlange
128+
delatorre
127129
dlange
128130
efremale
129131
elrawy
@@ -205,6 +207,7 @@ thakkar
205207
tharun
206208
timmaraju
207209
tlattner
210+
torre
208211
vaibhav
209212
vassil
210213
vassilev

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

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
AARCH
22
AIML
33
BGZF
4+
Caa
45
CINT
56
CMSSW
67
Cppyy
@@ -23,6 +24,7 @@ SBO
2324
Slib
2425
Softsusy
2526
Superbuilds
27+
TBR
2628
TFormula
2729
TTree
2830
aarch
@@ -36,6 +38,7 @@ gitlab
3638
gridlay
3739
gsoc
3840
gpu
41+
jthread
3942
llm
4043
llvm
4144
pushforward
@@ -47,6 +50,7 @@ reoptimize
4750
samtools
4851
sitemap
4952
softsusy
53+
superbuilds
5054
vimeo
5155
www
5256
xcolors
@@ -57,3 +61,9 @@ xplugin
5761
youtu
5862
youtube
5963
zenodo
64+
biodynamo
65+
Caa
66+
Jurgaityt
67+
Resugaring
68+
superbuilds
69+
TBR

.github/actions/spelling/expect.txt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,6 @@
11
Reoptimization
2+
Resugaring
3+
optimizing
24
genomics
35
reoptimization
46
sustainability

_data/contributors.yml

Lines changed: 25 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -275,10 +275,34 @@
275275
potentially establishing a new standard for high-performance genomic data analysis.
276276
proposal: /assets/docs/Aditya_Pandey_GSoC2025.pdf
277277
mentors: Martin Vassilev, Jonas Rembser, Fons Rademakers, Vassil Vassilev
278+
279+
- name: Petro Mozil
280+
photo: PetroMozil.jpg
281+
info: "Google Summer of Code 2025 Contributor"
282+
283+
education: "Bachelor of Computer Science, Ukrainian Catholic University, Ukraine"
284+
github: "https://github.com/pmozil"
285+
active: 1
286+
linkedin: "https://www.linkedin.com/in/petro-mozil-a94583170/"
287+
projects:
288+
- title: "Enabling support for STL concurrency primitives in CLAD"
289+
status: Ongoing
290+
description: |
291+
Clad recursively iterates over the syntax tree to check whether a given
292+
statement should be differentiated. Each function that is called from
293+
inside of a differentiated function should be differentiated as well,
294+
and so should any object method. The main issue for clad is that std::thread is an object,
295+
and thus as a type that should be differentiated However, std::thread shouldn’t
296+
be differentiated, the function inside of it should.
297+
Some of STL’s concurrency primitives face the same problem -
298+
the methods in them should not be differentiated,
299+
and only the location of where they were called should be preserved.
300+
proposal: /assets/docs/petro_mozil_promosal_GSoC_2025.pdf
301+
mentors: Martin Vassilev, David Lange
278302

279303
- name: Salvador de la Torre Gonzalez
280-
info: "Google Summer of Code 2025 Contributor"
281304
photo: salva_de_la_torre_gonzalez.jpg
305+
info: "Google Summer of Code 2025 Contributor"
282306
283307
github: "https://github.com/salva24"
284308
linkedin: "https://www.linkedin.com/in/salva-de-la-torre-gonzalez-7299b6335/"

_data/standing_meetings.yml

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,10 @@
33
time_cest: "17:00"
44
connect: "[Link to zoom](https://princeton.zoom.us/j/97915651167?pwd=MXJ1T2lhc3Z5QWlYbUFnMTZYQlNRdz09)"
55
agenda:
6+
- title: "Using ROOT in the field of genome sequencing"
7+
date: 2025-05-21 17:00:00 +0200
8+
speaker: "Aditya Pandey"
9+
link: "[Slides](/assets/presentations/CaaS_Weekly_21_05_2025_Aditya_Pandey_Using_ROOT_for_genome_sequencing.pdf)"
610
- title: "Activity Analysis: Summary"
711
date: 2025-01-29 17:00:00 +0200
812
speaker: "Maksym Andriichuk"
@@ -245,7 +249,7 @@
245249
date: 2022-09-07 14:00:00 +0200
246250
speaker: "Anubhab Ghosh"
247251
link: "[Slides](/assets/presentations/CaaS_Weekly_07_09_2022_Anubhab-Shared_Memory_Based_JITLink_Memory_Manager.pdf)"
248-
- title: "Current working status of optmizing ROOT modules"
252+
- title: "Current working status of optimizing ROOT modules"
249253
date: 2022-09-07 14:00:00 +0200
250254
speaker: "Jun Zhang"
251255
link: "[Slides](/assets/presentations/CaaS_Weekly_07_09_2022_Jun_Zhang_Current_Working_Status_of_Optimize_Modules_Usage_For_ROOT.pdf)"
@@ -349,3 +353,7 @@
349353
date: 2022-01-05 14:00:00 +0200
350354
speaker: "Parth Arora"
351355
link: "[Slides](/assets/presentations/CaaS_Weekly_05_01_2022_Parth-Add_Support_For_Differentiating_wrt_User_Defined_Types.pdf)"
356+
- title: "Agent-Based Simulation of CAR-T Cell Therapy Using BioDynaMo Initial Presentation"
357+
date: 2025-05-21 17:00:00 +0200
358+
speaker: "Salvador de la Torre Gonzalez"
359+
link: "[Slides](/assets/presentations/Salva_initial_presentation_me_and_project_CART.pdf)"

_pages/team/petro-mozil.md

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
---
2+
title: "Compiler Research - Team - Petro Mozil"
3+
layout: gridlay
4+
excerpt: "Compiler Research: Team members"
5+
sitemap: false
6+
permalink: /team/PetroMozil
7+
8+
---
9+
10+
{% include team-profile.html %}

_pages/team/salvador-delatorre.md renamed to _pages/team/salvador-de-la-torre-gonzalez.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ title: "Compiler Research - Team - Salvador de la Torre Gonzalez"
33
layout: gridlay
44
excerpt: "Compiler Research: Team members"
55
sitemap: false
6-
permalink: /team/SalvadorDeLaTorreGonzalez
6+
permalink: /team/SalvadordelaTorreGonzalez
77
88
---
99

_posts/2025-05-14-biodynamo-cart-simulation.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ excerpt: "This GSoC 2025 project, Agent-Based Simulation of CAR-T Cell Therapy,
55
sitemap: true
66
author: Salvador de la Torre Gonzalez
77
permalink: blogs/gsoc25_salvador_introduction_blog/
8-
banner_image: /images/blog/gsoc-banner.png
8+
banner_image: /images/blog/cart_plasma_gsoc.png
99
date: 2025-05-14
1010
tags: gsoc BioDynaMo c++
1111
---
@@ -29,7 +29,7 @@ of microenvironmental factors like hypoxia, regulatory T-cells, and immunosuppre
2929

3030
This project represents an exciting opportunity to apply my dual academic background in mathematics and computer engineering to a highly impactful domain: cancer immunotherapy.
3131

32-
My interest in oncology and CAR-T treatments deepened significantly after attending a course on Mathematical Modeling and Data Analysis in Oncology, taught by researchers from the Mathematical Oncology Laboratory" ([MôLAB](https://molab.es/)) team at the University of Cádiz. During this course, I was introduced to the fundamentals of immunotherapy and CAR-T cell dynamics, and became fascinated by the potential of mathematical and computational tools to contribute to this area.
32+
My interest in oncology and CAR-T treatments deepened significantly after attending a course on Mathematical Modeling and Data Analysis in Oncology, taught by researchers from the Mathematical Oncology Laboratory" ([MôLAB](https://molab.es/)) team at the University of Cadiz. During this course, I was introduced to the fundamentals of immunotherapy and CAR-T cell dynamics, and became fascinated by the potential of mathematical and computational tools to contribute to this area.
3333

3434
I believe that building a scalable, open-source simulation of CAR-T therapy can become a valuable resource for scientists and clinicians worldwide, helping them to better understand and optimize treatment strategies considering the complex landscape of solid tumors.
3535

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
---
2+
title: "Supporting STL Concurrency Primitives in CLAD"
3+
layout: post
4+
excerpt: "Support for STL concurrency features in CLAD is a useful feature for applications utilizing cpu threads. Many applications of autodifferentiation benefit from parallel or concurrent processing, and support for some STL concurrency primitives such as threads and basic synchronization primitives may considerably simplify the user's design."
5+
sitemap: false
6+
author: Petro Mozil
7+
permalink: blogs/gsoc25_/
8+
banner_image: /images/blog/gsoc-banner.png
9+
date: 2025-05-18
10+
tags: gsoc llvm clang auto-differentiation
11+
---
12+
13+
## About me
14+
15+
I am Petro Mozil, a student participating in the Google Summer of Code program in 2025.
16+
I will work on adding support of STL concurrency primitives to CLAD.
17+
18+
## Problem description
19+
20+
`Clad` is a plugin for automatic differentiation for the `clang` compiler.
21+
Automatic differentiation is a term for multiple techniques of deriving a mathematical function analytically. Some of the ways of doing this include simply calculating the derivative numerically or by deriving a function by a set of rules, symbolically.
22+
23+
`Clad` provides an interface that returns an object that contained the derivative of a given function. There might be problems with some functions, if they are to be derived. For example, one would not derive `printf`, and neither would they derive `std::tread` - those are exceptions, and should be handled differently from mathematical functions.
24+
25+
The main goals of this project are to implement support for automatically derive functions that contain `std::thread` so that the user wouldn't have to separate the multi-processing logic from the mathematical functions - such a feature would be a great time-saver for production of multi-processing code.
26+
27+
## Objectives
28+
29+
The objectives for this project include adding support for multiple objects in STL, such as `std::thread`, `std::atomic`, `std::mutex`.
30+
31+
The first, and, likely, most important part of the project is to add support for `std::thread` - this will include deriving not the `std::thread` constructor, but deriving the function supplied for the thread.
32+
33+
Support for mutexes is a bit more straightforward - though `clad` creates a second object to represent the derived value, it shouldn't do so for a mutex. It is a matter of having a custom derivative for `std::mutex`.
34+
35+
Atomics will likely involve more effort - they would require custom derivatives for `compare_exchange` functions as well as their methods.
36+
37+
If time allows, I would also like to add support for `std::condition_variable`, `std::lock_guard`, `std::unique_lock` and `std::jthread`, and most of those would also only involve a custom derivative.
38+
39+
40+
## Conclusion
41+
42+
A a result of this project, support for the concurrency primitives is expected. Clad should seamlessly derive functions with concurrency primitives in them.
43+
Though this project does not focus on features immediately required from `clad`, it should result in making easier the lives of those, who use clad for high-perf computing.
44+
45+
## Related links
46+
47+
- [LLVM Repository](https://github.com/llvm/llvm-project)
48+
- [CLAD repository](https://github.com/vgvassilev/clad)
49+
- [Project description](https://hepsoftwarefoundation.org/gsoc/2025/proposal_Clad-STLConcurrency.html)
50+
- [My github](https://github.com/pmozil)
Binary file not shown.
171 KB
Binary file not shown.
Binary file not shown.

images/blog/cart_plasma_gsoc.png

195 KB
Loading

images/team/PetroMozil.jpg

107 KB
Loading
704 KB
Loading

0 commit comments

Comments
 (0)