CERN School of Computing 2019
from
Sunday 15 September 2019 (15:00)
to
Saturday 28 September 2019 (11:00)
Monday 9 September 2019
Tuesday 10 September 2019
Wednesday 11 September 2019
Thursday 12 September 2019
Friday 13 September 2019
Saturday 14 September 2019
Sunday 15 September 2019
15:00
Arrival and registration
Arrival and registration
15:00 - 19:00
19:45
Dinner
Dinner
19:45 - 20:45
Monday 16 September 2019
08:45
Bus to Babeș-Bolyai University
Bus to Babeș-Bolyai University
08:45 - 09:00
09:15
Opening Ceremony
Opening Ceremony
09:15 - 10:45
10:45
Welcome coffee
Welcome coffee
10:45 - 11:15
11:15
Introduction to Physics Computing L1: Hadron Collider Physics
-
Arnulf Quadt
(
University of Göttingen
)
Introduction to Physics Computing L1: Hadron Collider Physics
(Physics Computing)
Arnulf Quadt
(
University of Göttingen
)
11:15 - 12:15
Here we will focus on the physics of particle collisions, theoretical aspects of the standard model of particle physics, its predictive power as well as its shortcomings. Experimental aspects such as collider facilities and modern particle physics experiments as well as example physics questions and corresponding data analyses will be discussed. Furthermore, the compute models with the resulting amount of recorded data and simulated Monte Carlo events will be described.
12:30
Lunch
Lunch
12:30 - 13:45
14:00
Software Security L1: Introduction
-
Sebastian Lopienski
(
CERN
)
Software Security L1: Introduction
(Software Engineering)
Sebastian Lopienski
(
CERN
)
14:00 - 15:00
First lecture starts with a definition of computer security and an explanation of why it is so difficult to achieve. The lecture highlights the importance of proper threat modelling and risk assessment. It then presents three complementary methods of mitigating threats: protection, detection, reaction; and tries to prove that security through obscurity is not a good choice.
15:00
Tools and Techniques L1: Introduction
-
Bob Jacobsen
(
UC Berkeley
)
Tools and Techniques L1: Introduction
(Software Engineering)
Bob Jacobsen
(
UC Berkeley
)
15:00 - 16:00
To start, we discuss some of the characteristics of software projects for high energy physics, and some of the issues that arise when people want to contribute to them. This forms the framework for the Software Technologies Track. We then continue with a brief introduction to software engineering from the perspective of the individual contributor, both as a formal process and how it actually affects what you do. The lecture discusses several categories of tools & techniques you can use to make yourself more productive and effective. Continuous testing and documentation has proven to be important in producing high quality work, but it's often difficult to do; we discuss some available approaches. Many problems require specific tools and techniques to solve them effectively: We discuss the examples of performance tuning and memory access problems.
16:00
Announcements
Announcements
16:00 - 16:15
16:15
Afternoon coffee
Afternoon coffee
16:15 - 16:30
16:30
Software Security L2: Security in different phases of software development
-
Sebastian Lopienski
(
CERN
)
Software Security L2: Security in different phases of software development
(Software Engineering)
Sebastian Lopienski
(
CERN
)
16:30 - 17:30
The second lecture addresses the following question: how to create secure software? It introduces the main security principles (like least-privilege, or defense-in-depth) and discusses security in different phases of the software development cycle. The emphasis is put on the implementation part: most common pitfalls and security bugs are listed, followed by advice on best practice for security development.
17:30
Introduction to Physics Computing L2: Digital Data, Simulation and Reconstruction in Modern Particle Physics Experiments
-
Arnulf Quadt
(
University of Göttingen
)
Introduction to Physics Computing L2: Digital Data, Simulation and Reconstruction in Modern Particle Physics Experiments
(Physics Computing)
Arnulf Quadt
(
University of Göttingen
)
17:30 - 18:30
Here, a focus will be placed on specific detector sub-components and their data readout concepts as well as data reconstruction techniques, simulation techniques and analysis techniques.
20:00
Welcome dinner
Welcome dinner
20:00 - 22:00
Tuesday 17 September 2019
08:45
Tools and Techniques E1
-
Bob Jacobsen
(
UC Berkeley
)
Tools and Techniques E1
(Software Engineering)
Bob Jacobsen
(
UC Berkeley
)
08:45 - 09:45
The first three exercises provide some direct experience with the tools and techniques described in Lectures 1 and 2. Teams of two students will work together on through examples designed to show the strengths and weaknesses of various tools and approaches. This will be followed by small projects for additional development experience.
09:45
Morning coffee
Morning coffee
09:45 - 10:00
10:00
Tools and Techniques E2
-
Bob Jacobsen
(
UC Berkeley
)
Tools and Techniques E2
(Software Engineering)
Bob Jacobsen
(
UC Berkeley
)
10:00 - 11:00
The first three exercises provide some direct experience with the tools and techniques described in Lectures 1 and 2. Teams of two students will work together on through examples designed to show the strengths and weaknesses of various tools and approaches. This will be followed by small projects for additional development experience.
11:00
Tools and Techniques E3
-
Bob Jacobsen
(
UC Berkeley
)
Tools and Techniques E3
(Software Engineering)
Bob Jacobsen
(
UC Berkeley
)
11:00 - 12:00
The first three exercises provide some direct experience with the tools and techniques described in Lectures 1 and 2. Teams of two students will work together on through examples designed to show the strengths and weaknesses of various tools and approaches. This will be followed by small projects for additional development experience.
12:00
Announcements
Announcements
12:00 - 12:15
12:30
Lunch
Lunch
12:30 - 13:15
13:30
Study time / daily sports
Study time / daily sports
13:30 - 15:00
15:15
Guest lecture: Computational Science - The Third Pillar of Science?
-
Emil Slusanschi
(
UPB
)
Guest lecture: Computational Science - The Third Pillar of Science?
(Additional lectures)
Emil Slusanschi
(
UPB
)
15:15 - 16:15
In this talk we will talk about the way in which in the 21st Century we will probably be limited to design and create by what we can compute, not by what we can measure, as was the case in the 20th Century. We will discuss about current trends in HPC technology, hardware and software alike, the landscape of Supercomputing in terms of computing architectures and likely development trends, as well as the opportunities that HPC offers for many scientific and engineering domains.
16:15
Afternoon coffee
Afternoon coffee
16:15 - 16:30
16:30
Software Security E1
-
Sebastian Lopienski
(
CERN
)
Software Security E1
(Software Engineering)
Sebastian Lopienski
(
CERN
)
16:30 - 17:30
In the practice session, a range of typical security vulnerabilities will be presented. The goal is to learn how they can be exploited (for privilege escalation, data confidentiality compromise etc.), how to correct them, and how to avoid them in the first place! Students will be given small pieces of source code in different programming languages, and will be asked to find vulnerabilities and fix them. The online course documentation will gradually reveal more and more information to help students in this task. Additionally, students will have a chance to try several source code analysis tools, and see how such tools can help them find functionality bugs and security vulnerabilities.
17:30
Software Security E2
-
Sebastian Lopienski
(
CERN
)
Software Security E2
(Software Engineering)
Sebastian Lopienski
(
CERN
)
17:30 - 18:30
In the practice session, a range of typical security vulnerabilities will be presented. The goal is to learn how they can be exploited (for privilege escalation, data confidentiality compromise etc.), how to correct them, and how to avoid them in the first place! Students will be given small pieces of source code in different programming languages, and will be asked to find vulnerabilities and fix them. The online course documentation will gradually reveal more and more information to help students in this task. Additionally, students will have a chance to try several source code analysis tools, and see how such tools can help them find functionality bugs and security vulnerabilities.
18:30
Software Security E3
-
Sebastian Lopienski
(
CERN
)
Software Security E3
(Software Engineering)
Sebastian Lopienski
(
CERN
)
18:30 - 19:30
In the practice session, a range of typical security vulnerabilities will be presented. The goal is to learn how they can be exploited (for privilege escalation, data confidentiality compromise etc.), how to correct them, and how to avoid them in the first place! Students will be given small pieces of source code in different programming languages, and will be asked to find vulnerabilities and fix them. The online course documentation will gradually reveal more and more information to help students in this task. Additionally, students will have a chance to try several source code analysis tools, and see how such tools can help them find functionality bugs and security vulnerabilities.
20:00
Special dinner and pub quiz
Special dinner and pub quiz
20:00 - 22:00
Wednesday 18 September 2019
08:45
Machine Learning L1: Understanding Classification
-
Anna Scaife
(
University of Manchester
)
Machine Learning L1: Understanding Classification
(Physics Computing)
Anna Scaife
(
University of Manchester
)
08:45 - 09:45
This lecture introduces machine learning for classification in a general way before demonstrating a specific example of classification using random forests. The lecture describes the concepts of training, validation and test data sets, and introduces the problem of class imbalance and various methods for addressing this issue. The lecture gives an overview of standard performance metrics, including those for specific machine learning classification problems, and introduces the receiver operating characteristic (ROC) curve.
09:45
Morning coffee
Morning coffee
09:45 - 10:00
10:00
Tools and Techniques L2: Tools for Collaboration, Software Engineering Across the Project
-
Bob Jacobsen
(
UC Berkeley
)
Tools and Techniques L2: Tools for Collaboration, Software Engineering Across the Project
(Software Engineering)
Bob Jacobsen
(
UC Berkeley
)
10:00 - 11:00
HEP software is built by huge teams. How can this be done effectively, while still giving people satisfying tasks to perform? Large systems are a hard problem, and this lecture focuses on the current techniques for dealing with it. Use of central source control has become routine, so we build on that understanding to discuss distributed systems like Git. We then discuss the larger area of release & distributing via a package versioning system vs. a distributed build system (e.g. Git and CMake). Now that we've covered both individual and group work, we go back to the software engineering topics of the first lecture to see how these fit together. How does our individual work affect the ability of the entire project to proceed? What are tools and techniques that will improve both our individual work, and out contributions to the whole? We close with a summary of observations.
11:00
Announcements
Announcements
11:00 - 11:15
11:15
Machine Learning L2: Gaussian Process Modelling
-
Anna Scaife
(
University of Manchester
)
Machine Learning L2: Gaussian Process Modelling
(Physics Computing)
Anna Scaife
(
University of Manchester
)
11:15 - 12:15
This lecture introduces the machine learning method of Gaussian Process Modelling (GPM). It introduces the concept of covariate Gaussian noise, including the covariance matrix as parameterised using covariance kernels, and illustrates the effect of different degrees of covariance on a simulated dataset. The lecture shows how the covariance matrix can be inverted for imputation of missing data or forward prediction based on a training data set.
12:30
Lunch
Lunch
12:30 - 13:15
13:30
Study time / daily sports
Study time / daily sports
13:30 - 15:00
15:15
Student presentations
Student presentations
15:15 - 16:15
16:15
Software Security L3: Web application security, exercise debriefing
-
Sebastian Lopienski
(
CERN
)
Software Security L3: Web application security, exercise debriefing
(Software Engineering)
Sebastian Lopienski
(
CERN
)
16:15 - 17:15
This third hour consists of a debriefing of the exercises, and in particular those web-related. Various vulnerabilities typical to web applications (such as Cross-site scripting, SQL injection, cross-site request forgery etc.) are introduced and discussed.
17:15
Afternoon coffee
Afternoon coffee
17:15 - 17:30
17:30
Tools and Techniques E4
-
Bob Jacobsen
(
UC Berkeley
)
Tools and Techniques E4
(Software Engineering)
Bob Jacobsen
(
UC Berkeley
)
17:30 - 18:30
After the two-person teams acquire some experience with the development and release tools, we will group projects to demonstrate some of the real-world issues discussed in the lecture. Groups of two teams will first work together to create a functional release from individual sub-projects at various stages of completion to show the strengths and weaknesses of test and release tools. This is followed by a larger scale exercise with groups of teams.
18:30
Tools and Techniques E5
-
Bob Jacobsen
(
UC Berkeley
)
Tools and Techniques E5
(Software Engineering)
Bob Jacobsen
(
UC Berkeley
)
18:30 - 19:30
After the two-person teams acquire some experience with the development and release tools, we will group projects to demonstrate some of the real-world issues discussed in the lecture. Groups of two teams will first work together to create a functional release from individual sub-projects at various stages of completion to show the strengths and weaknesses of test and release tools. This is followed by a larger scale exercise with groups of teams.
20:00
Dinner
Dinner
20:00 - 20:45
Thursday 19 September 2019
08:45
Software Design L1: Parallelism in a Modern HEP Data Processing Framework
-
Enric Tejedor
(
CERN
)
Software Design L1: Parallelism in a Modern HEP Data Processing Framework
(Software Engineering)
Enric Tejedor
(
CERN
)
08:45 - 09:45
Even though the miniaturization of transistors on chips continues like predicted by Moore's law, computer hardware starts to face scaling issues, so-called performance 'walls'. Probably, the best known is the 'power wall', which limits clock frequencies. Amongst others, a way of increasing processor performance remains now to integrate many cores in the same chip. At the same time, the upcoming LHC upgrade will increase the required CPU power drastically. Both problems challenge the current way of software design in high energy physics (HEP). Developers in high energy physics are forced to re-think their ways of software design and need to move to massively parallel applications. This lecture will explain the current HEP software design, the hardware and physics issues that need to be tackled, and possible approaches to achieve the required level of parallelization.
09:45
Morning coffee
Morning coffee
09:45 - 10:00
10:00
Software Design L2: Base Concepts of Parallel Programming: A Pragmatic Approach
-
Andrei Gheata
(
CERN
)
Software Design L2: Base Concepts of Parallel Programming: A Pragmatic Approach
(Software Engineering)
Andrei Gheata
(
CERN
)
10:00 - 11:00
This and the following lecture will explain the concepts behind various parallelization methodologies. First, a theoretical introduction into threads, thread-safety and concurrent data access will be given. As the new C++ standard (C++11) now provides build-in support for parallel programming, the new features of this standard will be shown. Finally, concrete solutions for the theoretical problems will be discussed.
11:00
Announcements
Announcements
11:00 - 11:15
11:15
Machine Learning L3: Convolutional Neural Networks
-
Anna Scaife
(
University of Manchester
)
Machine Learning L3: Convolutional Neural Networks
(Physics Computing)
Anna Scaife
(
University of Manchester
)
11:15 - 12:15
This lecture introduces the method of using Convolutional Neural Networks (CNNs) for image based classification. The lecture gives an overview of examples of popular CNN architectures and describes the functionality of each layer within a CNN. It uses the example of binary cross entropy to introduce the concept of a cost function and explains how this is optimised using a gradient descent algorithm and the principle of back-propagation. The lecture concludes by giving an example of how a particular CNN architecture can be implemented in Python.
12:30
Lunch
Lunch
12:30 - 13:15
13:30
Special sports afternoon
Special sports afternoon
13:30 - 22:00
Friday 20 September 2019
08:45
Data Science: Tools for interactive exploration
-
Bob Jacobsen
(
UC Berkeley
)
Data Science: Tools for interactive exploration
(Physics Computing)
Bob Jacobsen
(
UC Berkeley
)
08:45 - 09:45
High energy physics has a rich history of interactive exploration of physics data, starting with tools like PAW and ROOT. The explosion of Data Science has created new tools for interactive exploration of large and ad-hoc datasets. This lecture introduces some of these, and shows how they can be used to find new and useful features starting with available data.
09:45
Morning coffee
Morning coffee
09:45 - 10:00
10:00
Software Design L3: Understanding, Debugging and Profiling a Complex Multithreaded Application
-
Andrei Gheata
(
CERN
)
Software Design L3: Understanding, Debugging and Profiling a Complex Multithreaded Application
(Software Engineering)
Andrei Gheata
(
CERN
)
10:00 - 11:00
Dealing with a parallel application is complex. We need to use procedures to rise fences to protect against mistakes, like static analysis tools allowing to find bugs in an automatic way. We also need to use tools to inspect and manipulate the behavior of programs at runtime, like the GDB debugger. Finally, profilers such as igprof can help us understand the performance bottlenecks of an application and get more insight on its efficiency. The objective of this lecture is to become familiar with these tools and be able to apply them in multithreaded programs.
11:00
Announcements
Announcements
11:00 - 11:15
11:15
Software Design L4: Patterns for Parallel Software Development
-
Enric Tejedor
(
CERN
)
Software Design L4: Patterns for Parallel Software Development
(Software Engineering)
Enric Tejedor
(
CERN
)
11:15 - 12:15
This lecture will present a set of common patterns in parallel programming. The sequential origin of these patterns will be discussed, as well as the restrictions that they impose. A particularly successful combination of patterns, Map-Reduce, will be described in detail and examples of its everyday use at large scale will be given. On the other hand, it will be shown how high-level features like C++ lambdas, the TBB library or the Spark framework can help get started with the aforementioned parallel patterns.
12:30
Lunch
Lunch
12:30 - 13:15
13:30
Study time / daily sports
Study time / daily sports
13:30 - 15:00
15:15
Guest lecture: Physics-inspired computer algorithms
-
Liliana Teodorescu
(
Brunel University
)
Guest lecture: Physics-inspired computer algorithms
Liliana Teodorescu
(
Brunel University
)
15:15 - 16:15
This lecture will introduce a few computer algorithms developed in computer science using simplified versions of physics phenomena as inspiration. The lecture will focus on the parallel between some physics concepts and principles, and counterparts in computer algorithms. Examples of applications of such algorithms will also be presented. The lecture aims to inspire physicists and computer scientist or practitioners to see physics not only as a source of large amounts of data that drives computer algorithm development and applications, but also as a potential source of new ideas for such algorithms.
16:15
Afternoon coffee
Afternoon coffee
16:15 - 16:30
16:30
Machine Learning E1
-
Anna Scaife
(
University of Manchester
)
Machine Learning E1
(Physics Computing)
Anna Scaife
(
University of Manchester
)
16:30 - 17:30
17:30
Machine Learning E2
-
Anna Scaife
(
University of Manchester
)
Machine Learning E2
(Physics Computing)
Anna Scaife
(
University of Manchester
)
17:30 - 18:30
18:30
Machine Learning E3
-
Anna Scaife
(
University of Manchester
)
Machine Learning E3
(Physics Computing)
Anna Scaife
(
University of Manchester
)
18:30 - 19:30
20:00
Dinner
Dinner
20:00 - 20:45
Saturday 21 September 2019
08:45
Software Design E1
-
Enric Tejedor
(
CERN
)
Andrei Gheata
(
CERN
)
Software Design E1
(Software Engineering)
Enric Tejedor
(
CERN
)
Andrei Gheata
(
CERN
)
08:45 - 09:45
The exercises will cover the topics of lectures 1 to 4 at a hands-on basis, based on C++11, TBB and Spark. It covers examples for the new C++11 functionality related to threads and thread safety. In addition, there will be examples for concurrent access to data, lock and lock-free data structures, and task based programming. Finally, there will be an exercise to practise the Map-Reduce pattern by using the Spark parallel data processing framework.
09:45
Morning coffee
Morning coffee
09:45 - 10:00
10:00
Software Design E2
-
Enric Tejedor
(
CERN
)
Andrei Gheata
(
CERN
)
Software Design E2
(Software Engineering)
Enric Tejedor
(
CERN
)
Andrei Gheata
(
CERN
)
10:00 - 11:00
The exercises will cover the topics of lectures 1 to 4 at a hands-on basis, based on C++11, TBB and Spark. It covers examples for the new C++11 functionality related to threads and thread safety. In addition, there will be examples for concurrent access to data, lock and lock-free data structures, and task based programming. Finally, there will be an exercise to practise the Map-Reduce pattern by using the Spark parallel data processing framework.
11:00
Software Design E3
-
Andrei Gheata
(
CERN
)
Enric Tejedor
(
CERN
)
Software Design E3
(Software Engineering)
Andrei Gheata
(
CERN
)
Enric Tejedor
(
CERN
)
11:00 - 12:00
The exercises will cover the topics of lectures 1 to 4 at a hands-on basis, based on C++11, TBB and Spark. It covers examples for the new C++11 functionality related to threads and thread safety. In addition, there will be examples for concurrent access to data, lock and lock-free data structures, and task based programming. Finally, there will be an exercise to practise the Map-Reduce pattern by using the Spark parallel data processing framework.
12:00
Announcements
Announcements
12:00 - 12:15
12:30
Lunch
Lunch
12:30 - 13:15
13:30
Free time
Free time
13:30 - 19:30
20:00
Dinner
Dinner
20:00 - 20:45
Sunday 22 September 2019
08:30
Excursion to Turda salt mines, and to Sighișoara
Excursion to Turda salt mines, and to Sighișoara
08:30 - 22:30
Monday 23 September 2019
08:45
Data Visualization L1: The Theory Behind Data Visualization
-
Eamonn Maguire
Data Visualization L1: The Theory Behind Data Visualization
(Data Technologies)
Eamonn Maguire
08:45 - 09:45
In this lecture, we introduce the basic concepts behind data visualization, what we are visualizing, why we are visualizing it, and how we can visualize data more effectively.
09:45
Morning coffee
Morning coffee
09:45 - 10:00
10:00
Networking Fundamentals L1: Transport Network: The essentials
-
Francois Fluckiger
Networking Fundamentals L1: Transport Network: The essentials
(Data Technologies)
Francois Fluckiger
10:00 - 11:00
The objective of this series of two lectures is to present the fundamentals of networking, to help those involved in scientific computing to design systems or programmes involving at-a-distance actions, as well as to better understand their behaviours. Therefore, the aim is not to dwell on the nitty-gritty details, formats, or protocols, but to extract and synthetize the knowledge useful to the non-networkers. The first lecture will focus on the transport network and will present the fundamental principles of IP, its historical limits and recent enhancements that led it to become a universal transport technology.
11:00
Announcements
Announcements
11:00 - 11:15
11:15
Data Visualization L2: Practical Applications of Theory and Multi-Dimensional Data Visualization
-
Eamonn Maguire
Data Visualization L2: Practical Applications of Theory and Multi-Dimensional Data Visualization
(Data Technologies)
Eamonn Maguire
11:15 - 12:15
In this lecture we apply some of what we learned in Lecture 1 and also introduce the visualization of multi-dimensional data.
12:30
Lunch
Lunch
12:30 - 13:15
13:30
Study time / daily sports
Study time / daily sports
13:30 - 15:30
15:45
CSC School Photo
CSC School Photo
15:45 - 16:00
16:00
Data Technologies L1: Setting the scene: Storage technologies, Storage reliability
-
Alberto Pace
(
CERN
)
Data Technologies L1: Setting the scene: Storage technologies, Storage reliability
(Data Technologies)
Alberto Pace
(
CERN
)
16:00 - 17:00
The lecture presents the various Storage Models, and the supporting management techniques. The lecture will then go in details on techniques to deliver arbitrary reliability and performance and discuss the solutions for long data preservation and trading between reliability, performances and costs.
17:00
Afternoon break
Afternoon break
17:00 - 17:15
17:15
Data Visualization E1
-
Eamonn Maguire
Data Visualization E1
(Data Technologies)
Eamonn Maguire
17:15 - 18:15
18:15
Data Visualization E2
-
Eamonn Maguire
Data Visualization E2
(Data Technologies)
Eamonn Maguire
18:15 - 19:15
19:45
Dinner
Dinner
19:45 - 20:30
20:45
Special evening talk: Future of the Universe and of Humanity
-
Ivica Puljak
(
U.Split
)
Special evening talk: Future of the Universe and of Humanity
(Additional lectures)
Ivica Puljak
(
U.Split
)
20:45 - 21:45
Books mentioned during the special evening talk by Ivica: **Sean Carroll - “The Big Picture: On the Origins of Life, Meaning, and the Universe Itself”**, OneWorld Publications, 2016 **Steven Pinker - “Enlightenment Now: The Case for Reason, Science, Humanism, and Progress”**, Penguin Books, 2018 **Hans Rosling, Anna, Rosling Roennlund, Ola Rosling - “Factfulness: Ten Reasons We're Wrong About the World-and Why Things Are Better Than You Think”**, Flatiron Books, 2018 **Yuval Noah Harari - “Homo Deus: a Brief History of Tomorrow”**, Harvill Secker, 2015 **Yuval Noah Harari - “21 Lessons for the 21st Century”**, Jonathan Cape, 2018 **Max Tegmark - “Life 3.0: Being Human in the Age of Artificial Intelligence”**, Knoph, 2017 **Thomas L. Friedman - “Thank You for Being Late: An Optimist's Guide to Thriving in the Age of Accelerations”** Macmillan Publisher, 2016
Tuesday 24 September 2019
08:45
Data Analysis L1: Introduction to data analysis and Monte Carlo method
-
Ivica Puljak
(
University of Split
)
Data Analysis L1: Introduction to data analysis and Monte Carlo method
(Physics Computing)
Ivica Puljak
(
University of Split
)
08:45 - 09:45
First lecture in Data Analysis series discuss graphical techniques used in exploratory data analysis, gives an introduction to concept of probability, and descriptive statistics summarizing the basic features of the data gathered from experiments. Monte Carlo method is introduced and explained with examples from engineering and high energy physics.
09:45
Morning coffee
Morning coffee
09:45 - 10:00
10:00
Guest talk: Using MPI and OpenMP in building High Performance Applications
-
Virginia Niculescu
(
UBB
)
Guest talk: Using MPI and OpenMP in building High Performance Applications
(Additional lectures)
Virginia Niculescu
(
UBB
)
10:00 - 11:00
The hybrid nature of the new systems – distributed memory across nodes and shared memory within each node – poses challenges to application developers. The goal of this talk is to emphasize the differences between distributed and shared memory models, by presenting their fundamental operations and related developing strategies. Two traditional programming models are considered: MPI as a representative of the distributed memory model, and OpenMP that offers a very simple and in the same time efficient way to specify multithreading computation. We intend to present also how to create a basic hybrid program based on both, and how this approach could efficiently exploits the hardware facilities.
11:00
Announcements
Announcements
11:00 - 11:15
11:15
Networking Fundamentals L2: Focus on End-Systems
-
Francois Fluckiger
Networking Fundamentals L2: Focus on End-Systems
(Data Technologies)
Francois Fluckiger
11:15 - 12:15
The second of this two-lectures series, which aims at contributing to the computing culture of those involved in scientific computing, will focus on the end-systems issues, in particular TCP, the Internet Transport Protocol, the companion technology of IP. The lecture will present in a synthetic manner the major features and services of TCP to help understand observed behaviours of networked activities, as well as today’s issues such as tuning and performance aspects associated to long-distance and high bit-rate connections.
12:30
Lunch
Lunch
12:30 - 13:15
13:30
Data Technologies L1: Introduction
-
Andreas Peters
(
CERN
)
Data Technologies L1: Introduction
(Data Technologies)
Andreas Peters
(
CERN
)
13:30 - 14:30
The lecture will introduce the basic concepts of IO systems, protocols and data storage models as a preparation to the data technology exercises.
14:30
Afternoon break
Afternoon break
14:30 - 14:45
14:45
Data Technologies E1
-
Andreas Peters
(
CERN
)
Data Technologies E1
(Data Technologies)
Andreas Peters
(
CERN
)
14:45 - 15:45
The first part of hands-on exercises aims to improve understanding of basic parameters in IO systems: • network and media latency • access patterns • OS caching • bottlenecks and optimization strategies for local and remote data access. Few essential Linux tools will be introduced to monitor and measure IO performance avoiding bias introduced by OS caching. Students will experience and measure the impact of latency and access patterns on IO performance. The second part covers the concept of parallelism and redundancy in storage system. We will apply the technology of Cloud storage systems to store and retrieve files in our local desktop cluster using a distributed hash table to locate files or file fragments and a REST interface to do GET, PUT or DELETE operations on these. The exercises conclude with the implementation and performance tuning of a RAID verification algorithm.
15:45
Data Technologies E2
-
Andreas Peters
(
CERN
)
Data Technologies E2
(Data Technologies)
Andreas Peters
(
CERN
)
15:45 - 16:45
The first part of hands-on exercises aims to improve understanding of basic parameters in IO systems: • network and media latency • access patterns • OS caching • bottlenecks and optimization strategies for local and remote data access. Few essential Linux tools will be introduced to monitor and measure IO performance avoiding bias introduced by OS caching. Students will experience and measure the impact of latency and access patterns on IO performance. The second part covers the concept of parallelism and redundancy in storage system. We will apply the technology of Cloud storage systems to store and retrieve files in our local desktop cluster using a distributed hash table to locate files or file fragments and a REST interface to do GET, PUT or DELETE operations on these. The exercises conclude with the implementation and performance tuning of a RAID verification algorithm.
17:00
Traditional CSC football match
Traditional CSC football match
17:00 - 19:00
19:45
Dinner
Dinner
19:45 - 20:30
20:45
Special evening talk: When Internet history meets philosophy
-
Francois Fluckiger
Special evening talk: When Internet history meets philosophy
(Additional lectures)
Francois Fluckiger
20:45 - 21:45
Wednesday 25 September 2019
08:45
Data Analysis L2: Distributions and estimators
-
Ivica Puljak
(
University of Split
)
Data Analysis L2: Distributions and estimators
(Physics Computing)
Ivica Puljak
(
University of Split
)
08:45 - 09:45
In this lecture commonly used probability distributions are introduced with basic properties and few examples. Parameter estimation with maximum likelihood and least-squared methods is explained.
09:45
Morning coffee
Morning coffee
09:45 - 10:00
10:00
Data Technologies L2: Cryptography, authentication authorization and accounting 1 (PKI)
-
Alberto Pace
(
CERN
)
Data Technologies L2: Cryptography, authentication authorization and accounting 1 (PKI)
(Data Technologies)
Alberto Pace
(
CERN
)
10:00 - 11:00
This lectures give elements of computer security that are relevant to data management. The lectures address the various cryptographic technologies used in data storage systems to ensure data encryption, integrity, confidentiality and access control. The Public Key infrastructure standard will be described as an example.
11:00
Announcements
Announcements
11:00 - 11:15
11:15
Data Analysis L3: Confidence intervals
-
Ivica Puljak
(
University of Split
)
Data Analysis L3: Confidence intervals
(Physics Computing)
Ivica Puljak
(
University of Split
)
11:15 - 12:15
Determining the errors on the parameters, which is equivalent to the confidence interval estimation is shown with specific examples on maximum likelihood and least-squared methods in one and more than one dimension. Uncertainties in physics and error propagation are also discussed.
12:30
Lunch
Lunch
12:30 - 13:15
13:30
Study time / daily sports
Study time / daily sports
13:30 - 15:45
16:00
Afternoon break
Afternoon break
16:00 - 16:15
16:15
Data Technologies E3
-
Andreas Peters
(
CERN
)
Data Technologies E3
(Data Technologies)
Andreas Peters
(
CERN
)
16:15 - 17:15
The first part of hands-on exercises aims to improve understanding of basic parameters in IO systems: • network and media latency • access patterns • OS caching • bottlenecks and optimization strategies for local and remote data access. Few essential Linux tools will be introduced to monitor and measure IO performance avoiding bias introduced by OS caching. Students will experience and measure the impact of latency and access patterns on IO performance. The second part covers the concept of parallelism and redundancy in storage system. We will apply the technology of Cloud storage systems to store and retrieve files in our local desktop cluster using a distributed hash table to locate files or file fragments and a REST interface to do GET, PUT or DELETE operations on these. The exercises conclude with the implementation and performance tuning of a RAID verification algorithm.
17:15
Data Technologies E4
-
Andreas Peters
(
CERN
)
Data Technologies E4
(Data Technologies)
Andreas Peters
(
CERN
)
17:15 - 18:15
The first part of hands-on exercises aims to improve understanding of basic parameters in IO systems: • network and media latency • access patterns • OS caching • bottlenecks and optimization strategies for local and remote data access. Few essential Linux tools will be introduced to monitor and measure IO performance avoiding bias introduced by OS caching. Students will experience and measure the impact of latency and access patterns on IO performance. The second part covers the concept of parallelism and redundancy in storage system. We will apply the technology of Cloud storage systems to store and retrieve files in our local desktop cluster using a distributed hash table to locate files or file fragments and a REST interface to do GET, PUT or DELETE operations on these. The exercises conclude with the implementation and performance tuning of a RAID verification algorithm.
18:45
Dinner at sports faculty
Dinner at sports faculty
18:45 - 19:30
Thursday 26 September 2019
08:45
Data Technologies L3: Cryptography, authentication authorization and accounting 2 (Kerberos, OAuth, OpenID)
-
Alberto Pace
(
CERN
)
Data Technologies L3: Cryptography, authentication authorization and accounting 2 (Kerberos, OAuth, OpenID)
(Data Technologies)
Alberto Pace
(
CERN
)
08:45 - 09:45
This lecture will continue the discussion on authentication using the Kerberos standard and then move to authorization where after the theory the OAuth 2.0 standard will be described. Accounting will also be addressed.
09:45
Morning coffee
Morning coffee
09:45 - 10:00
10:00
Data Analysis L4: Statistical tests
-
Ivica Puljak
(
University of Split
)
Data Analysis L4: Statistical tests
(Physics Computing)
Ivica Puljak
(
University of Split
)
10:00 - 11:00
Hypothesis testing is introduced with examples of goodness-of-fit tests and the most recent examples from high energy physics. Particular emphasis is given on the p-values and when we claim the discoveries.
11:00
Announcements
Announcements
11:00 - 11:15
11:15
Data Technologies L4: Distributed Hash Tables, Data Replication, Caching, Monitoring, Alarms and Quota 1
-
Alberto Pace
(
CERN
)
Data Technologies L4: Distributed Hash Tables, Data Replication, Caching, Monitoring, Alarms and Quota 1
(Data Technologies)
Alberto Pace
(
CERN
)
11:15 - 12:15
This lecture describes the various possible technologies used to implement distributed hash tables, data workflows and complex data transfer processes. It also discusses problems with data caching and Garbage Collection to conclude on monitoring and quota enforcement.
12:30
Lunch
Lunch
12:30 - 13:15
13:30
Data Analysis E1: Monte Carlo method and Fitting with Root
-
Ivica Puljak
(
University of Split
)
Data Analysis E1: Monte Carlo method and Fitting with Root
(Physics Computing)
Ivica Puljak
(
University of Split
)
13:30 - 14:30
• Generating random numbers • Monte-Carlo toy experiments • Modeling signal and background. • Fitting with ROOT packages (finding peaks).
14:30
Data Analysis E2: Confidence interval
-
Ivica Puljak
(
University of Split
)
Data Analysis E2: Confidence interval
(Physics Computing)
Ivica Puljak
(
University of Split
)
14:30 - 15:30
• Finding errors on fit parameters • Extracting confidence intervals
15:30
Afternoon break
Afternoon break
15:30 - 15:45
15:45
Data Analysis E3: Hypothesis testing
-
Ivica Puljak
(
University of Split
)
Data Analysis E3: Hypothesis testing
(Physics Computing)
Ivica Puljak
(
University of Split
)
15:45 - 16:45
• Finding p-value • Converting p-values to significance • Low count experiments and hypothesis testing
17:00
Study time / daily sports
Study time / daily sports
17:00 - 19:15
19:45
Dinner
Dinner
19:45 - 20:30
Friday 27 September 2019
08:45
Data Technologies L5: Distributed Hash Tables, Data Replication, Caching, Monitoring, Alarms and Quota 2
-
Alberto Pace
(
CERN
)
Data Technologies L5: Distributed Hash Tables, Data Replication, Caching, Monitoring, Alarms and Quota 2
(Data Technologies)
Alberto Pace
(
CERN
)
08:45 - 09:45
This lecture concludes the description of the various possible technologies used to implement distributed hash tables, data workflows and complex data transfer processes. It also discusses problems with data caching and Garbage Collection to conclude on monitoring and quota enforcement.
09:45
Guest talk: Industrial applications of data science
-
Cosmin Lazar
(
Bosch
)
Guest talk: Industrial applications of data science
(Additional lectures)
Cosmin Lazar
(
Bosch
)
09:45 - 10:30
Disease diagnostic, biomarkers discovery, drugs development, personalized medicine, land cover mapping, biodiversity conservation, predictive maintenance, product development, process optimization, autonomous driving, smart mobility – building - factory, fraud detection, recommendation systems etc. – this is an extremely short list of applications where data science plays an essential role. Data science touches all economic sectors and is truly impacting almost every aspect of our everyday life. This vast diversity of applications can be narrowed down to much smaller set of tools and methods that provide with more or less standard solutions to the very wide range of real life challenges. This is the role of a data scientist who works hand in hand with a domain expert to tailor the optimal solution for the goal in mind. In the industrial sector, data is generated in all areas of activity and all industries, from the hiring process, to the development and production of a product (a product can be a car, an assurance policy, a medical prescription, a market survey etc.) to the customer itself. Of much importance for most industries is also the data generated during the entire life cycle of the products, extremely valuable in order to design better products. The role of a data scientist is to extract knowledge from data by means of standard algorithms and methods and to create new assets for the business. We propose to showcase the variety of use cases issued from the manufacturing industries paired with similar use cases from other application areas. For example a comparison of image processing in medical imaging vs. automated optical inspections on manufacturing lines, recommendation systems in manufacturing vs recommendation systems in E-commerce or application of statistical tests for biomarkers discovery vs. root cause analysis of failures on a production line.
10:30
Announcements
Announcements
10:30 - 10:45
10:45
Morning coffee
Morning coffee
10:45 - 11:15
11:15
CSC examination
CSC examination
11:15 - 12:15
12:30
Lunch
Lunch
12:30 - 13:15
13:30
Free time
Free time
13:30 - 17:00
17:15
Afternoon break
Afternoon break
17:15 - 17:30
17:30
Graduation and closing ceremony at Hotel Napoca
Graduation and closing ceremony at Hotel Napoca
17:30 - 19:30
19:45
Closing dinner at Amagusto restaurant
Closing dinner at Amagusto restaurant
19:45 - 22:00
Saturday 28 September 2019
08:45
Departure
Departure
08:45 - 11:00