<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
:::