
<font size=5 color=blueyellow>**MAX CoE/ENCCS Workshop on Efficient Materials Modelling on HPC with Quantum ESPRESSO, Siesta and Yambo -- Planning**</font>
**Contributions**: <a><img src="https://img.shields.io/badge/MaX CoE-purple?style=plastic"/></a> <a><img src="https://img.shields.io/badge/ENCCS-blue?style=plastic"/></a>
**Categories**: <a><img src="https://img.shields.io/badge/Workshop-996300?style=plastic"/></a> <a><img src="https://img.shields.io/badge/HPC Applications-green?style=plastic"/></a> <a><img src="https://img.shields.io/badge/DFT Calculations-3232ff?style=plastic"/></a> <a><img src="https://img.shields.io/badge/Quantum ESPRESSO-aqua?style=plastic"/></a> <a><img src="https://img.shields.io/badge/Siesta-red?style=plastic"/></a> <a><img src="https://img.shields.io/badge/Yambo-gold?style=plastic"/></a>
**Contents of this documents and quicklinks**:
[TOC]
---
## Event Page
- March 11-15, 09:00-13:00 (CET), 2024
- HPC onboarding session during week before workshop
### Overview
In recent years, computing technologies underlying materials modelling and electronic structure calculation have evolved rapidly. High-performance computing (HPC) is transitioning from petascale to exascale, while individual compute nodes are increasingly based on heterogeneous architectures that every year become more diversified due to different vendor choices. In this environment, electronic structure codes also have to evolve fast in order to adapt to new hardware facilities. Nowadays, state-of-the-art electronic structure codes based on modern density functional theory (DFT) methods allow treating realistic molecular systems with a very high accuracy. However, due to the increased complexity of the codes, some extra skills are required from users in order to fully exploit their potential. This workshop will give a broad overview of important fundamental concepts for molecular and materials modelling on HPC, with a focus on three of the most modern codes for electronic structure calculations (**QUANTUM ESPRESSO**, **SIESTA** and **Yambo**). Theory sections will be interleaved with practical demonstrations and hands-on exercises where participants will put their new knowledge to the test on the [Leonardo EuroHPC JU supercomputer](https://leonardo-supercomputer.cineca.eu/hpc-system/).
[QUANTUM ESPRESSO](https://www.quantum-espresso.org/) is one of the most popular suites of computer codes for electronic-structure calculations and materials modelling at the nanoscale, based on density-functional theory, plane waves, and pseudopotentials. It is able to predict and give fundamental insights about many properties of materials, molecular systems, micro and nanodevices, biological systems, in many fields, providing a huge amount of data for data-driven science applications.
[SIESTA](http://www.max-centre.eu/codes-max/siesta) is a pseudopotential-based DFT software whose strength lies in its use of atomic-like strictly-localised basis sets: the use of a "good first approximation" to the full problem decreases the number of basis functions needed to achieve a given accuracy, and the finite support of the orbitals leads to sparsity in the Hamiltonian and overlap matrices, thus enabling the use of reduced-scaling methods. The functionalities of SIESTA include, amongst others, the calculation of energies and forces, molecular-dynamics simulations, band structures, densities of states, spin-orbit couplings, van der Waals functionals, hybrid functionals, DFT+U for correlated systems, real-time TDDFT, and density-functional perturbation theory.
[YAMBO](http://www.yambo-code.eu/) is an open-source code implementing first-principles methods based on Green’s function (GF) theory to describe excited-state properties of realistic materials. These methods include the GW approximation, the Bethe Salpeter equation, nonequilibrium GF (NEGF) and TDDFT, allowing for the prediction of accurate quasiparticle energies (e.g. ARPES band structures), linear and non-linear optical properties, capturing the physics of excitons, plasmons, and magnons. It is also possible to calculate temperature-dependent electronic and optical properties via electron-phonon coupling and nonequilibrium and non-linear optical properties via NEGF real-time simulations (pump-probe experiments, etc).
### What you will learn
In this workshop, participants will learn how to launch the most common types of calculations (e.g. scf, phonons, quasi-particle energies, time-dependent properties) using QE, Yambo and BigDFT, how to prepare input files and how to read output files in order to extract the desired properties.
Best practices for efficient exploitation of HPC resources will be discussed, with particular emphasis on how to use the different schemes of data distribution (*e.g.* plane waves, pools, images) in combination with the different parallelization and acceleration schemes (MPI, OpenMP, GPU-offload) available in Quantum ESPRESSO, SIESTA and Yambo.
### Prerequisites
This workshop is aimed towards researchers and engineers who already have some previous experience with materials modelling and electronic structure calculations:
- Basic familiarity with density functional theory (DFT), self-consistent field (SCF) calculations and plane wave basis sets is desirable as the workshop will not cover the fundamental theory of these topics.
- Basic familiarity with working in a Linux environment and some experience with working on an HPC system is needed to participate in the hands-on exercises.
---
---
## Tentative Agenda
- 2 days QE - Mon-Tue
- 2 days Siesta - Wed-Thu
- 1 day Yambo - Friday
- 9:00-13:00 (CET) every day
### <font color=red>(Mar. 8) Day 0</font>
| Time | Content |
| :---------: | :-----: |
| XX:00-XX:00 | Online HPC onboarding session to help participants log in the Leonardo Booster cluster |
### <font color=red>(Mar. 11) Day 1</font>
| Time | Content | Instructors |
| :---------: | :-----: | :---------: |
| 09:00-09:15 | Welcome and introduction to ENCCS | Thor/Yonglei |
| 09:15-09:30 | Introduction to Max-CoE and MaX flagship codes | A. Ferretti/D. Varsano |
| 09:30-10:10 | Overview of QE suite of codes and main features | P. Delugas & I. Carnimeo|
| 10:10-10:25 | Coffee break | |
| 10:25-13:00 | PWSCF for HPC and GPU | O. Baseggio |
### <font color=red>(Mar. 12) Day 2</font>
| Time | Content | Instructors |
| :---------: | :-----: | :---------: |
| 09:00-09:45 | Introduction to Density Functional Perturbation Theory | P. Giannozzi |
| 09:45-10:15 | Introduction to Time Dependent Density Functional Perturbation Theory | I. Timrov |
| 10:15-10:30 | Coffee break | |
| 10:30-13:00 | Phonons and time dependent properties on HPC and GPU | PH: I. Timrov & L. Bellentani; TD: T. Gorni & O. Baseggio |
### <font color=red>(Mar. 13) Day 3</font>
| Time | Content | Instructors |
| :---------: | :-----: | :---------: |
| 09:00-09:45 | SIESTA basics | |
| 09:45-10:30 | A first contact with SIESTA: inputs, execution and outputs | |
| 10:30-10:45 | Break | |
| 10:45-11:30 | Convergence (K points, Mesh, Mixing) | |
| 11:30-12.00 | Basis sets | |
| 12:00-13:00 | Basis set optimization | |
### <font color=red>(Mar. 14) Day 4</font>
| Time | Content | Instructors |
| :---------: | :-----: | :---------: |
| 09:00-10:00 | Moving atoms: geometry optimization and beyond | |
| 10:00-11:00 | Analysis tools | |
| 11:00-11:15 | Break | |
| 11:15-11:45 | Features available in siesta: spin-orbit couplings, TranSIESTA, and others | |
| 11:45-13:00 | Pushing the boundaries of SIESTA: ELSI and PEXSI | |
### <font color=red>(Mar. 15) Day 5</font>
| Time | Content | Instructors |
| :---------: | :-----: | :---------: |
| 09:00-09:20 | Overview of the Yambo code and its main features and performance | D. Sangalli |
| 09:20-10:00 | Introduction to GW approximation | A. Guandalini, D. Leon Valido |
| 10:00-10:20 | Coffee break | |
| 10:20-13:00 | Hands-on tutorial: A guided tour through GW simulations (convergence, algorithms, parallel usage) | D. Varsano, F. Paleari, A. Ferretti, D. Sangalli, M. D’Alessio |
---
---
## Reading Materials
### Yambo suggested reading
* Main website www.yambo-code.eu
* Yambo Cheatsheets: https://www.yambo-code.eu/wiki/index.php/Cheatsheets
* yambo: An ab initio tool for excited state calculations, A. Marini, C. Hogan, M. Grüning, and D. Varsano. Computer Physics Communications 180, 1392(2009) https://doi.org/10.1016/j.cpc.2009.02.003
* Many-body perturbation theory calculations using the yambo code, D. Sangalli *et al.* J. Phys.: Condens. Matter 31, 325902 (2019). https://doi.org/10.1088/1361-648X/ab15d0
* Efficient GW calculations in two dimensional materials through a stochastic integration of the screened potential, A. Guandalini *et al.* NPJ Comput. Mater. 9, 44 (2023). https://doi.org/10.1038/s41524-023-00989-7
---
---
## Planning Meetings
### Planning meeting -- Jan. 17
- Reservation of CPU/GPU hours on Leonardo booster
- enccs will handld all details
- max coe -- rough hours for each participants
- Recording of workshop
- Participants from EuroHPC JU + EU countries + Horizon 2020
- 32 registrations
- using google/outlook/yahoo emails, I will ask them to update personal info using instituation email
- only 10 are qualified
- others from africa, asia, north and south america
- more promotion at social media
- Followup meeting (?)
- Jan. 31 (14-15)
- Feb. 20/21
- Mar. 6
- Mar. 11-15 for workshop
- resources for workshop
- add instructors (need emails) to training project
---
---
### Planning meeting -- Jan. 31
- Reservation of CPU/GPU hours on Leonardo booster
- enccs will handld all details
- max coe -- rough hours for each participants
- Recording of workshop
- Participants from EuroHPC JU + EU countries + Horizon 2020
- **50** qualified registrations
- we asked "Please write 2-3 sentences on why you think attending this training event will help you in your work"
- also "How experienced are you with Quantum Espresso" and ditto for Yambo & Siesta
- Followup meeting
- Feb. 20/21
- Mar. 6
- Mar. 11-15 for workshop
- resources for workshop
- add instructors (need emails) to training project
**Notes**
- rm "Ignacio Alliati, Univ. Bellfast" from event page
- add a new speaker instead - Daniele will email Yonglei
- email addresses of all instructors need to be sent to Yonglei so he can add them to the project on Leonardo
- need an estimation for amount of compute needed
- use formula: 40 participants * hours_handson_per_day * number_of_days * number_of_nodes_per_job
- we need around 1 GPU node for each 2 participants (for Yambo)
- SIESTA:
- 4 CPU cores per student, in general (no need of GPUs for this); except for
- half a Leonardo Booster node (16 CPU cores and 2 GPUs) per student for the last tutorial of Thursday 14th.
- TODO: ask CINECA how many GPU and CPU nodes we can get in workshop reservation
- "Leonardo data-centric partition" soon available on Leonardo - can we use it?
- two new tutors will need to be added to github repo (https://github.com/ENCCS/max-coe-workshop/)
- TODO: add Giacomo (he'll send username)
- registration deadline ~2 weeks before workshop, around Feb 23
- workshop invitations go out on Feb 23, invited people are asked to confirm participation, if cancellations then invite from waiting list, final list then sent to CINECA at least one week before workshop
- TODO: ask Aline to send workshop announcement to NCCs
- also make sure it's in the EuroCC weekly newsletter
---
---
### Planning meeting -- Feb. 20
#### Registrations
- 224 registrations in total
- 105 rejections + 2 withdraw
- **117 qualified registrations**
#### Criteria to accept registrations
We plan to accept 50 qualified registrations
- Priority goes to registrations with institution email?
- Half of qualified registrations with institution email?
- Gender balance
- Academia-Industry balance
- Others(???)
- Send invitation email to shortlisted registrations
- Ask for their confirmation
- if cancel or withdraw, we can invite registrations from the waiting list
- Please write 2-3 sentences on why you think attending this training event will help you in your work
- How experienced are you with Quantum Espresso" and ditto for Yambo & Siesta
- Final list will be shared with CINECA one week before the workshop
#### CINECA computational resources
- all instructors can get access to Leonardo Booster (**???**)
- Reservation of CPU/GPU hours on Leonardo booster
- Quantum Espresso
- one Leonardo Booster node per participant * 2 days
- SIESTA
- 4 CPU cores per participant * 2 days
- half Leonardo Booster node (16 CPUs + 2 GPUs) per participant for last tutorial on Mar. 14
- Yambo
- half Leonardo Booster node (16 CPUs + 2 GPUs) per participant * 1 day
#### Materials for workshop
- Lesson materials: https://enccs.github.io/max-coe-workshop/
- Hackmd documents: YLW will handle hackmd documents
- Recording of workshop
#### Followup meeting
- Mar. 6 (10:00-11:00)
- Mar. 8 -- Onboarding session
- Mar. 11-15 for workshop
---
---
### <span style="background-color: aqua">**The last planning meeting -- Mar. 6**</span>
#### Computational resources on LB
- a dedicated project was created for this workshop
- use ==`EUHPC_TD02_030`== in the script to submit jobs to LB cluster
- I have moved the added instructors to this project
- all instructors can get access to Leonardo Booster (==???==)
- let me know their CINECA ID
#### Accepted participants
- invitations to all registrations marked with `yes` and `recommended`
- 50 participants to lecture and hand-on exercise sessions
- ask them to register at the CINECA platform
- I will get the temporary usernames/passwords from CINECA staff today, and distribute to registerred participants
- ~20-30 participants to lecture session
- install package on windows laptop?
#### Materials for workshop
- ==Lesson materials==: https://enccs.github.io/max-coe-workshop/
- the schedule on in this lesson material is not correct
- YL will update it later
- focus on the schedule in the hackmd documents
- Hackmd documents: https://hackmd.io/@yonglei/max-enccs-workshop-2024-schedule
- instructors and affiliations
#### On-boarding session
- we will arrange two time slots for the on-boarding session on Friday (09:00-10:00, and 13:00-14:00)
---