The detailed scientific and social program is reported here below.

Monday, August 29
08:00 - 09:00Registration
09:00 – 09:45Welcome
Presentation of the school (Gabriele Curci, CETEMPS)
Greetings from local authorities:
- Prof. Eugenio Coccia (Rector of GSSI)
- Prof. Paola Inverardi (Rector of University of L’Aquila)
- Prof. Frank Marzano (Director of CETEMPS)
- Prof. Francesco Vissani (GSSI)
09:45 – 10:45HPC overview (Valentine Anantharaj, ORNL, USA; Mike Ashworth, STFC, UK)
Definition of High Performance Computing, history, main computer and cluster architectures, world’s top computers, required resources to develop HPC services in terms of funding, professional profiles, and infrastructure.
10:45 – 11:15Break
11:15 – 12:00Batch systems (Stefano Stalio, LNGS, Italy)
Main jobs queuing systems, configuration, monitoring, and optimization.
12:00 – 13:00Data management (Sandro Fiore, CMCC, Italy) [via web]
Issues and solutions for efficient access and analysis of large amount of data. Earth System Grid Federation (ESGF), Ophidia.
13:00 – 14:00Lunch
14:00 – 15:00Profiling and optimization (Silvia Mocavero, CMCC, Italy) [via web]
Profiling performance of codes, identification of slowest sections of the code, check of scalability of parallel codes for optimization of CPU/memory use.
15:00 – 15:45Practical session 1
1. Exercise on profiling and optimization (Mocavero on CMCC)
2. Exercise on scientific data management, with a special focus on large scale data analysis (Ophidia) (Alessandro D’Anca and Sandro Fiore on CMCC)
15:45 – 16:15Break
16:15 – 18:00Practical session 1, continued
18:00 - 21:00Ice breaker
Tuesday, August 30
09:00 – 09:45Introduction to parallel programming (Mike Ashworth, STFC, UK)
Parallel programming with shared and distributed resources.
09:45 – 10:45Parallelization with OpenMP (Robert Yantosca, Harvard, USA)
How to parallelize a code using OpenMP
10:45 – 11:15Break
11:15 – 13:00Parallelization with MPI (Valentine Anantharaj, ORNL)
How to parallelize a code using Message Passing Interface
13:00 – 14:00Lunch
14:00 – 15:45Practical session 2
1. Exercise on parallelization with OpenMP (Yantosca on CMCC)
2. Exercise on parallelization with MPI (Anantharaj + Ashworth + Dueben on ORNL)
15:45 – 16:15Break
16:15 – 18:00Practical session 2, continued
18:30 - 20:00City tour
Wednesday, August 31
09:00 – 10:00Best practices (Robert Yantosca, Harvard, USA)
General good practices in programming, and common mistakes or deprecated forms to avoid. Code versioning and automatic documentation.
10:00 – 10:45Next generation HPC (John Michalakes, UCAR, USA) [via web]
Parallel programming with next generation processors. Many Integrated Cores (MIC) architecture.
10:45 – 11:15Break
11:15 – 13:00Parallelization with GPUs (Donatella Granata, IAC-CNR, Italy)
How to parallelize a code for use with Graphical Processing Units
13:00 – 14:00Lunch
14:00 – 15:45Practical session 3
1. Exercise on code versioning and automatic documentation (Yantosca on CMCC)
2. Exercise on parallelization with MIC (Michalakes on CINECA)
3. Exercise on parallelization with GPU (Granata on ORNL)
15:45 – 16:15Break
16:15 – 18:00Practical session 3, continued
18:30 - 19:30Concert of the choir “Corale Novantanove”
19:30 - 21:00Aperitif with the musicians
Thursday, September 1
09:00 – 10:45ESMF (Mike Long, Harvard, USA)
How to prepare modules and combine them into the Earth System Modelling Framework (ESMF)
10:45 – 11:15Break
11:15 – 13:00Adjoint modelling (Daven Henze, U. Colorado, USA)
Formulation and development of an adjoint model, with overview of possible applications.
13:00 – 14:00Lunch
14:00 – 15:45Practical session 4
1. Exercise on ESMF (Long on ORNL)
2. Exercise on Adjoint (Henze on CMCC)
15:45 – 16:15Break
16:15 – 18:00Practical session 4, continued
19:00 - 23:00Social dinner at “La cartiera del Vetojo”
Friday, September 2
09:00 – 09:45Web-based platforms for the management of modelling chains (Antonio Parodi, CIMA Foundation, Italy) [via web]
Basic concepts and procedures on how to automate the simulation of a hierarchy of models on distributed and variegated computer resources.
Practical demonstration of use by the lecturer.
09:45 – 10:45Cloud services and virtual machines (Stefano Stalio, LNGS, Italy)
Overview of cloud services and basics for their effective use (setting up environment, virtual machines, etc.).
Practical demonstration of use by the lecturer.
10:45 – 11:15Break
“The Future of HPC in Earth System Modelling”
11:15 – 11:50Reduced precision for more accuracy: Inexact hardware in Earth System science (Peter Dueben, Oxford, UK)
The use of inexact hardware is promising large savings in power consumption and an increase in computational performance. This would allow an increase in resolution in model simulations and might be a short-cut to improve our understanding of the Earth System. However, simulations with inexact hardware show numerical errors, such as rounding errors or bit flips. The scope for a reduction of numerical precision to improve model performance and implications on model quality will be discussed and an outlook into the future of inexact hardware in HPC will be given.
11:50 – 12:25How to build an accurate Earth System model that scales well on HPC architectures (Peter Dueben, Oxford, UK)
We will consider the example of the fluid dynamical component of Atmosphere and Ocean models to provide insight into the myriad decisions that need to be made when developing a new Earth System model. Advantages and disadvantages of different methods and implications on scalability in HPC and model quality will be discussed. Is there a silver bullet?
12:25 – 13:00Is NWP an exascale computing application? (John Michalakes, UCAR, USA)
As HPC moves toward exascale computing, will weather models follow? Specifically, will applications that have real-time requirements such as Numerical Weather Prediction scale successfully to exascale supercomputers? What will they scale to? Higher resolution? Higher numerical order? Are the current requirements and questions we ask of NWP models now the right requirements and questions at exascale? In many ways, these are still questions being hashed out. This talk will provide a brief introduction to the discussion.
13:00 – 14:00Goodbye and Lunch!