---
# System prepended metadata

title: Reflections from Previous Training Events
tags: [Training-Hackathon, '2025']

---

<p style="text-align: center"><b><font size=6 color=blueyellow>Reflections From Previous Training Events</font></b></p>


:::info
**Contents of this documents and quicklinks**：
[TOC]
:::


## <span style="background-color: gold">1. Julia</span>

- deeper HPC related issues with Julia
- developing programs locally that targets HPC i.e. use of Docker and/or AppTainer
- Writing Julia for Python programmers
- ML using Julia (SciML)
    - how about split ML part in Julia workshops into a separate ML-using-Julia lesson
    - Francesco?
- Julia for data scientist and review of some packages for CAE and other demanding projects (ray tracing, CFD machine learning ...)


---
---


## <span style="background-color:lime">2. Python</span>

Expansion of [High Performance Data Analytics in Python](https://enccs.github.io/hpda-python/) into to three workshop: https://hackmd.io/@yonglei/python-workshops
- 1. Python HPDA
    - If we split them, we could also cover more things about big data storage and retrieval (S3, databases, tips on parallel file systems...) (Francesco)
    - data management
    - data storage
    - database
- 2. Python HPC
    - it would be beneficial to have comparison of all parallelization methods and best use cases as a summary
    - like [an overview of common data formats](https://enccs.github.io/hpda-python/scientific-data/#an-overview-of-common-data-formats)
    - Someone in the feedback mentioned having a KB of tips and tricks, sounds interesting! (Francesco)
    - ashwin!
- 3. Python ML/DL
    - Practical machine learning
    - Practical deep learning
- 4. a blogpost about data format/management in all eurohpc systems


---
---


## <span style="background-color:deeppink">3. AI/ML/DL</span>

lesson material `practical deep learning` from csc

- theory on ML and DL at a deeper level
- https://github.com/csc-training/intro-to-dl
- more ML algorithms/applications
    - workshops at intermediate level
- model optimization on AMD GPUs
- how to make use of GPU resources
- measure the performance of network
    - performance issues
- it will be interesting to have a workshop to learn to use alpha fold
    - https://liu.se/en/news-item/liu-forskare-far-alphafold-att-forutse-valdigt-stora-proteiner
    - another framework `jax`
- advance DL on specific models and application on prace machines for instance
    - rotations about CASTIEL2 course
- wrap models in web server (Flask, FastAPI, etc) ONNX Runtime     Sagemaker/Google Cloud ML/Azure ML
    - Example for using ONNX with KB-whisper: https://whisper.mesu.re/ | https://github.com/PierreMesure/whisper-web
- explainability on different models, further hands-on with new model architectures, best practices about project structuring
- ML/AI (tensorflow/PyTorch)
- DL transformers
- AI for chemistry
    - maybe we can arrange more events from AI Factories perspective like `AI4Science`
- Comparing different Deep-Learning techniques on the same dataset, training in parrallel and on a single CPU
    - start from webinars focusing on regression problems, classification problems, *etc.*


---
---


## <span style="background-color:cyan">4. Best practice HPC training</span>

- more on pedagogy, exercise design, backwards lesson design, hybrid training
- how to tackle very technical teaching that might be boring for some students
- pedagogy tips and lesson development sessions
- training ecosystems
- part of evita

---
---


## <span style="background-color:orange">5. CPU/GPU programming</span>

- OpenACC-CUDA
    - arrange one workshop at H2 
- MPI
    - piggy-back with our collaborators
- OpenMP offloading
- OpenMP with HIP
- Hybrid programming
- CUDA-Aware MPI
- Modern C++ for scientific computing
- Profiling and code optimization
- Solving specific physical problems
    - we may consider to write blogposts to solve specific problems using varied programming models
    - like DFT, MD, CFD computations
- Profiling for bottlenecks
- Programming FPGA
- Programming using other accelerators
- SYCL concurrent programming all system resources (CPU+GPUs from multiple vendors+accelerators...
- RUST programming 
- GPU toolchains and libraries


---
---


## <span style="background-color:red">6. Quantum computing</span>

- QC testing
- quantum machine learning
- quantum annealing, QC/HPC integration
- QC vs. other reversible computing paradigms, reversibility in HPC
- applied quantum programming for climate and machine learning
- integration of QC in HPC
- Quantum Error Correction
- Quantum-safe encryption


---
---


## <span style="background-color:yellow">7. HPC applications</span>

- quantum chemistry
    - vasp
    - emto
    - quantum espresso
    - sista
    - yambo
    - bigDFT
- HPC optimization for molecular dynamics
- QM/MM/MD methods
- more examples for CFD calculations
    - openFOAM
    - ...


---
---


## <span style="background-color:magenta">8. Programming tools</span>

- a workshop on containers like docker and singularity
- using dockers for training
    - can we have webinars for this topic?
- software control using Git


:::danger
:::
