Skip to content

Commit e3d0e0f

Browse files
committed
Typos
Signed-off-by: Petro Mozil <[email protected]>
1 parent 3ca10e3 commit e3d0e0f

File tree

2 files changed

+8
-8
lines changed

2 files changed

+8
-8
lines changed

_posts/2025-05-18-Supporting-STL-concurrency-primitives-in-clad.md

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -7,40 +7,40 @@ author: Petro Mozil
77
permalink: blogs/gsoc25_/
88
banner_image: /images/blog/gsoc-banner.png
99
date: 2025-05-18
10-
tags: gsoc llvm clang audo-differentiation
10+
tags: gsoc llvm clang auto-differentiation
1111
---
1212

1313
## About me
1414

1515
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 conurrency primitives to CLAD.
16+
I will work on adding support of STL concurrency primitives to CLAD.
1717

1818
## Problem description
1919

2020
`Clad` is a plugin for automatic differentiation for the `clang` compiler.
2121
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.
2222

23-
`Clad` provides an interface that returns an object that containd 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.
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.
2424

2525
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.
2626

2727
## Objectives
2828

29-
The objectives for thi project include adding support for multiple objects in STL, such as `std::thread`, `std::atomic`, `std::mutex`.
29+
The objectives for this project include adding support for multiple objects in STL, such as `std::thread`, `std::atomic`, `std::mutex`.
3030

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 suppliend for the thread.
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.
3232

33-
Support for mutexes is a bit more straighforward - 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`.
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`.
3434

35-
Atomics will likely involve moer effort - they would require custom derivatives for `compare_exchange` functions as well as their methods.
35+
Atomics will likely involve more effort - they would require custom derivatives for `compare_exchange` functions as well as their methods.
3636

3737
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.
3838

3939

4040
## Conclusion
4141

4242
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 reuired from `clad`, it should result in making easier the lives of those, who use clad for high-perf computing.
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.
4444

4545
## Related links
4646

0 commit comments

Comments
 (0)