---
type: slide
slideOptions:
transition: slide
---
## Distributed memory parallel programmation and its application
**Chuan Xu**, Niccolo Darchivio, first semestre, 2025-2026

---
## Distributed memory machines
- Each processor has its own memory
- 
---
## Distributed memory machines
<!-- _class: lead -->
<style>
p {
text-align: left;
}
</style>
### Comme collective goals
-- Broadcasting, data collection
-- Leader election, Majority, **Consensus** (1/4)
-- **Learning** (3/4)
---
## Learn skills -- Theorectical part
<!-- _class: lead -->
<style>
p {
text-align: left;
}
</style>
- Developed foundations for analyzing the time complexity of distributed algorithm
- Understanded fault-tolerant design principles and their guarantees
- Understanded the analysis of collective communication strategies for parallel computing
---
## Learn skills -- Pratical part
- Gained hands-on experience with high-performance computing environments, including CPU and GPU clusters on **Grid'5000**
- Implemented distributed training of machine learning models using multiple CPUs or GPUs with **PyTorch**.
---
## Evaluation
- 20% Course mini-tests
- 40% Project
- 40% Exam