inverted CERN School of Computing 2015

Europe/Zurich
31/3-004 - IT Amphitheatre (CERN)

31/3-004 - IT Amphitheatre

CERN

31/3-004
105
Show room on map
Alberto Pace (CERN), Giuseppe Lo Presti (CERN), Yasemin Hauser (CERN)
Description

CSC

"Where students turn into teachers"

Involving former CSC participants to deliver advanced education

Participants
  • Adam Lukasz Krajewski
  • Alberto Garcia Molero
  • Alberto Pace
  • Andre PEREIRA
  • Andrea Bizzeti
  • Andrea Manzi
  • Andreas Wagner
  • Antonio Romero Marin
  • Can You
  • Cheng-Hsi Chao
  • Christian Nieke
  • Christina Nelson
  • Daniel Felea
  • Daniel Martin Saunders
  • Danijela Bogavac
  • Dimitrios Semitsoglou Tsiapos
  • Dipanwita Banerjee
  • Federico Vaga
  • Flavio Pisani
  • Francois Fluckiger
  • Frederic Hemmer
  • Giacomo Lunghi
  • Gianluca Valentino
  • Giovanna Campogiani
  • Giuseppe LO PRESTI
  • Helga Timko
  • Helvi HARTMANN
  • Hendrik Borras
  • Hussein Al-Natsheh
  • Jaakko Henrik Koivuniemi
  • Kacper Surdy
  • Kaicheng Li
  • Katarzyna Maria Dyga
  • Katarzyna Stachyra
  • Kostadin Ivanov Kostadinov
  • Leonardo Rossi
  • Lorena Lobato Pardavila
  • Marco Clemencic
  • Marek Kamil Denis
  • Mateusz Susik
  • Michal Kwiatek
  • Mohammad Tariq
  • Nikos Kasioumis
  • Pasquale Buonocunto
  • Pawel SZOSTEK
  • Prasanth Kothuri
  • Rami Kamalieddin
  • Rathijit Biswas
  • Roberto Rocca
  • Sabrina Amrouche
  • Sebastian Lopienski
  • Sebastian Witowski
  • Stefano Martina
  • Sverre Jarp
  • Tadeusz Jakub Dul
  • Tahir Hussain
  • Vincent Alexander Croft
  • Yasemin Hauser
Webcast
There is a live webcast for this event
  • Monday, 23 February
    • 09:00 09:10
      Welcome 10m
      Speaker: Frederic Hemmer (CERN)
    • 09:10 09:30
      Introduction to the inverted CSC 20m
      Speaker: Alberto Pace (CERN)
      Slides
    • 09:30 10:30
      Evolution of processor architectures: growing complexity of CPUs and its impact on the software landscape

      During the last decade there was a major change in the processing hardware landscape. While Moore's law still drives the increase of the transistor count, the processing units get new architectural features and increase number of cores. This in turn forces a programming paradigm change and encourages new strategies in efficient programming.
      In this lectures we will analyze how the CPUs evolved over time and what impact does this evolution has on software. The simplest approaches to leverage parallelism at different level will be shown. We will look at the bottlenecks of the processing hardware and trends that might shape the next decade of computing.

      • 09:30
        Basic concepts in computer architectures 1h
        This lecture will provide the participants with the foundations of the computing hardware. It will set of from the early theoretical abstraction. Then, a model of a simple processor will be discussed. Subsequently, we will focus on various architectural features present in the modern hardware and will try to understand their roles and delivered gains. Targeted audience: This lecture targets all participants with interest in computer architectures. However, the most benefits will be taken by physicists and engineers who have a programming experience, but didn't complete a course in computer architectures. The lecture gives supplementary informations to the material presented in the main CSC and is not supposed to explain all the concepts from the ground up. Benefits of attending the lecture: After this lecture, the participants will have an understanding of the role of basic functional units in the CPU. They will be also able to enumerate techniques used in modern processors to increase performance. Prerequisites: This lecture targets people having computer programming experience and basic notion of the computer architectures.
        Speaker: Pawel Szostek (CERN)
        Slides
    • 10:30 11:00
      Coffee break 30m
    • 11:00 12:00
      Simulation of Longitudinal Beam Dynamics Problems

      What are typical beam dynamics issues in synchrotrons and why do we need numerical models to make predictions? How close can our model get to real machines and can we make end-to-end simulations for an accelerator complex such as the CERN one? What are the approximations built in the numerical model and what are the associated numerical challenges and limitations? These and further questions will be addressed in a series of two lectures. The lectures aim at giving an overview of basic beam dynamics concepts and numerical methods of modelling these.

      • 11:00
        Numerical Methods of Longitudinal Beam Dynamics 1h
        This lecture will focus on explaining basic beam dynamics concepts and the numerical methods to model them. Targeted audience: Computer scientists, engineers, and physicists interested in accelerator physics Benefits of attending the lecture: By the end of the lecture, you will have an overview of the building blocks of longitudinal beam dynamics and a feeling for the complexity of its numerical modelling. Prerequisites: Basic scientific background
        Speaker: Helga Timko (CERN)
        Slides
    • 12:00 13:30
      Lunch 1h 30m
    • 13:30 14:30
      Exploring EDA, Clustering and Data Preprocessing

      A short introduction, motivation and demonstration of how to move from tables full of numbers to a real description of data. Identifying patterns, relations between variables to reach an optimal understanding. In these lectures, the principles of exploratory data analysis, data preparation and visualisation are demonstrated.

      • 13:30
        Exploring EDA 1h
        An introduction to thinking in plots and searching for patterns. Understanding distributions, the interplay between variables of a single distribution and how to look at multiple variables. Principles explained with example data set and visualisation in R programming language. Targeted audience: Anyone wishing to learn more about how to look at data. Data scientists in this context can be either physicists or computer scientists or people involved in marketing or recruitment. Benefits of attending the lecture: Demonstration of the importance of understanding the nature of the data that were working with before beginning to analyse it. Examples of various software for data processing and visualisation will also be given. Prerequisites: This lecture will be self contained and easy to follow for anyone with some experience in basic computing and statistics.
        Speaker: Vincent Alexander Croft (NIKHEF (NL))
        Slides
    • 14:30 15:30
      Evolution of processor architectures: growing complexity of CPUs and its impact on the software landscape

      During the last decade there was a major change in the processing hardware landscape. While Moore's law still drives the increase of the transistor count, the processing units get new architectural features and increase number of cores. This in turn forces a programming paradigm change and encourages new strategies in efficient programming.
      In this lectures we will analyze how the CPUs evolved over time and what impact does this evolution has on software. The simplest approaches to leverage parallelism at different level will be shown. We will look at the bottlenecks of the processing hardware and trends that might shape the next decade of computing.

      • 14:30
        Multi-core processors and multithreading 1h
        This lecture will analyze trends in the evolution of the hardware architectures, as well as software approaches to harness parallelism. It will justify the need for multithreaded software and will explain why there are no major gains in single thread performance anymore. Targeted audience: The lecture targets participants willing to follow developments in the computing hardware and to understand the impact that hardware has on software. Benefits of attending the lecture: After this lecture, the attendees will have a notion of evolution of the CPUs over past three decades. They will know how to approach parallelism in a simple way. They will be aware of the caveats which may suppress code performance. Prerequisites: This lecture targets people having computer programming experience and basic notion of the computer architectures. *It is recommended that the attendees follow the first lecture before attending this one. This is not a hard requirement, though.
        Speaker: Pawel Szostek (CERN)
        Slides
    • 15:30 16:00
      Coffee break 30m
    • 16:00 17:00
      Simulation of Longitudinal Beam Dynamics Problems

      What are typical beam dynamics issues in synchrotrons and why do we need numerical models to make predictions? How close can our model get to real machines and can we make end-to-end simulations for an accelerator complex such as the CERN one? What are the approximations built in the numerical model and what are the associated numerical challenges and limitations? These and further questions will be addressed in a series of two lectures. The lectures aim at giving an overview of basic beam dynamics concepts and numerical methods of modelling these.

      • 16:00
        Numerical Challenges & Limitations of Longitudinal Beam Dynamics 1h
        This lecture will go through different numerical approximations and resulting limitations used frequently in longitudinal beam dynamics simulations. Computational challenges of multi-bunch simulations with intensity effects will be addressed in detail. Targeted audience: Computer scientists, engineers, and physicists interested in accelerator physics Benefits of attending the lecture: By the end of the lecture, you will have an overview of the main limitations and challenges faced in longitudinal beam dynamics simulations of synchrotrons. Prerequisites: Basics in beam dynamics and/or having followed Lecture 1
        Speaker: Helga Timko (CERN)
        Slides
  • Tuesday, 24 February
    • 10:00 11:00
      Bigger, Faster, High Perfomance Computing - and the importance of Message Passing
      • 10:00
        Challenges of Modern High Performance Computing 1h
        The first lecture is about the challenges modern computing is facing. Scientific questions with greater problem size are asked and data to be stored grows bigger and bigger. The increased demands on computational resources in science can be met running a collection of computers/nodes as a single large parallel computer. When there is adequate inter process communication between such a collection of independent nodes it becomes a high performance computer (HPC) able to compute large problems. The lecturer will give an overview over the development of HPC and modern application areas. Targeted audience: This lecture targets scientists in general working with big data and using computer cluster to compute, analyze or collect data. Benefits of attending the lecture: After this lecture, the attendees are expected to have a good understanding of the principles of high performance computing. The challenges science poses towards computer technologies and how it is handled. Prerequisites: To draw maximum benefits of the lecture, the attendant should preferably have had some contact with a big computer cluster already.
        Speaker: Helvi Hartmann (FIAS)
        Slides
    • 11:00 12:00
      Development of High Performance Computing Applications Across Heterogeneous Systems

      These lectures address the development of scientific applications for multicore computing platforms containing GPU devices as accelerators.
      The key goal is to develop practical skills to code applications that run efficiently across different computing systems.
      Scientists already attended parallel programming courses to take advantage of multi/many-core computing units, for both x86 and CUDA/GPU environments. However, the code may not be efficiently using the available resources. The first lecture aims to address the necessary expertise to evaluate performance scalability.
      Assuming the code is already tuned for either x86 computers or GPU devices, an efficient data distribution and task scheduling between these two types of computing units is an extra burden required for each distinct device/generation. The second lecture explores frameworks that aid the data domain partition and manage these complexities across distinct computing units, at runtime, allowing to code once and port its performance across different computing platforms.

      • 11:00
        Scalable Parallel Computing 1h
        Introduces the architecture of heterogeneous platforms, namely the different types of parallelism that can be applied and highlighting the challenges to develop high performance code for this environment. Shows the different programming paradigms for both CPUs and CUDA GPUs, supported by code snippets to bridge the gap between key concepts and basic CPU/GPU specific optimisations. Discusses a scalability study of a data analysis application for a simple dual socket computing system, complemented with a similar study for a CUDA GPU, emphasising the need to simultaneously explore the performance of both CPU and GPU devices. Targeted audience: This lecture is oriented for physicists and computer scientists developing compute intensive data-parallel applications. Benefits of attending the lecture: To improve skills to code high-performance and scalable applications, taking advantage of any multicore CPU coupled to a CUDA-GPU accelerator. Prerequisites: This lecture targets physicists and computer scientists with experience in C++ application development on current computing platforms (laptops/desktops, computing clusters) and basic knowledge of the CUDA environment.
        Speaker: André Pereira (LIP-Minho/University of Minho)
        Slides
    • 12:00 13:30
      Lunch 1h 30m
    • 13:30 14:30
      Bigger, Faster, High Perfomance Computing - and the importance of Message Passing
      • 13:30
        Message Passing 1h
        This lecture shows a detailed overview on message passing computing. There are different approaches to perform message passing. The lecture will discuss them and to evaluate their advantages and disadvantages with special focus on high performance computing. Targeted audience: This lecture targets scientists in general working with big data and using computer cluster to compute, analyze or collect data. Benefits of attending the lecture: After this lecture, the attendees are expected to have a good understanding of the principles of high performance computing. The challenges science poses towards computer technologies and how it is handled. Prerequisites: To draw maximum benefits of the lecture, the attendant should preferably have had some contact with a big computer cluster already. Dependencies: Though all lectures are in principle independent, in the case of a series, there might be some benefit for listeners to have attended the first lecture of the series.
        Speaker: Helvi Hartmann (FIAS)
        Slides
    • 14:30 15:30
      Exploring EDA, Clustering and Data Preprocessing

      A short introduction, motivation and demonstration of how to move from tables full of numbers to a real description of data. Identifying patterns, relations between variables to reach an optimal understanding. In these lectures, the principles of exploratory data analysis, data preparation and visualisation are demonstrated.

      • 14:30
        Taking Raw Data Towards Analysis 1h
        Taking the understanding of multi-variate interactions from lecture one; this lecture aims to demonstrate the descriptive power of various clustering algorithms in Python with a brief introduction to large scale data preprocessing software such as Hadoop. Targeted audience: Anyone wishing to learn more about how to look at data. Data scientists in this context can be either physicists or computer scientists or people involved in marketing or recruitment. Benefits of attending the lecture: Demonstration of the importance of understanding the nature of the data that were working with before beginning to analyse it. Examples of various software for data processing and visualisation will also be given. Prerequisites: This lecture will be self contained and easy to follow for anyone with some experience in basic computing and statistics.
        Speaker: Vincent Alexander Croft (NIKHEF (NL))
        Slides
    • 15:30 16:00
      Coffee break 30m
    • 16:00 17:00
      Development of High Performance Computing Applications Across Heterogeneous Systems

      These lectures address the development of scientific applications for multicore computing platforms containing GPU devices as accelerators.
      The key goal is to develop practical skills to code applications that run efficiently across different computing systems.
      Scientists already attended parallel programming courses to take advantage of multi/many-core computing units, for both x86 and CUDA/GPU environments. However, the code may not be efficiently using the available resources. The first lecture aims to address the necessary expertise to evaluate performance scalability.
      Assuming the code is already tuned for either x86 computers or GPU devices, an efficient data distribution and task scheduling between these two types of computing units is an extra burden required for each distinct device/generation. The second lecture explores frameworks that aid the data domain partition and manage these complexities across distinct computing units, at runtime, allowing to code once and port its performance across different computing platforms.

      • 16:00
        Frameworks to Aid Code Development and Performance Portability 1h
        Introduces the need for development frameworks to exploit and manage the different levels of parallelism of heterogeneous platforms. Presents their programming paradigm, execution flow, and performance model. Integrates one framework (StarPU or DICE) with a simple case study, with a detailed discussion the required steps to automatically guarantee both the functionality and performance portability across different systems. Targeted audience: This lecture is oriented for physicists and computer scientists developing compute intensive data-parallel applications. Benefits of attending the lecture: To get acquainted with frameworks that aid the development of efficient code for heterogeneous platforms, which at runtime manage data transfers and automatically adapts the code to the available computing resources. Prerequisites: This lecture targets physicists and computer scientists with experience in C++ application development on current computing platforms (laptops/desktops, computing clusters) and basic knowledge of the CUDA environment.
        Speaker: André Pereira (LIP-Minho/University of Minho)
        Slides