Search

Navigation and service

PATC training course "3rd JUQUEEN porting and tuning workshop" @ JSC

begin
02.Feb.2015 09:00
end
04.Feb.2015 17:00
venue
JSC, Jülich

JUQUEEN is JSC's large special purpose supercomputer, an IBM Blue Gene/Q with 5.9 Petaflop/s. Although production on JUQUEEN started more than two years ago, users still need to make special efforts in order to get the most out of this unique research tool and get accustomed to the hard- and software.

Each year the workshop also focuses on one special user group with additional parallel talks and closer support (this does not exclude other users). The third workshop in this series invites users from earth system modelling. This will be supported by our Simulation Laboratories for Climate Science and Terrestrial Systems.

The aim of this hands-on workshop is to support current users of JUQUEEN in porting their software, in analysing its performance, and in improving its efficiency. The workshop topics start with an introduction to JUQUEEN's hard- and software and related best practices. It will also explain the available performance and debugging tools and explain parallel I/O with its data formats. Special topics may then provide more in-depth knowledge on specific BG/Q features such as prefetching, SIMDsation with QPX, low-level networking, and active storage as well as topics close to earth system modelling.

This course is a PATC course (PRACE Advanced Training Centres).

Training course "Programming with Fortran" @ LRZ

begin
09.Feb.2015 09:00
end
13.Feb.2015 18:00
venue
LRZ Garching

This course is targeted at scientists with little or no knowledge of the Fortran programming language, but need it for participation in projects using a Fortran code base, for development of their own codes, and for getting acquainted with additional tools like debugger and syntax checker as well as handling of compilers and libraries. The language is for the most part treated at the level of the Fortran 95 standard; features from Fortran 2003 are limited to improvements on the elementary level. Advanced Fortran features like object-oriented programming or coarrays will be covered in a follow-on course in autumn.

To consolidate the lecture material, each day's approximately 4 hours of lecture are complemented by 3 hours of hands-on sessions.

Course participants should have basic UNIX/Linux knowledge (login with secure shell, shell commands, basic programming, vi or emacs editors).

Training course "Parallel Programming (MPI, OpenMP) and Tools" @ ZIH, Dresden

begin
16.Feb.2015 08:30
end
20.Feb.2015 16:30
venue
ZIH Dresden

The focus is on programming models MPI, OpenMP, and PETSc. Hands-on sessions (in C and Fortran) will allow users to immediately test and understand the basic constructs of the Message Passing Interface (MPI) and the shared memory directives of OpenMP. The last day is dedicated to tools. This course is organized by ZIH in collaboration with HLRS. (Content Level: 70% for beginners, 30% advanced)

Training course "Introduction to Computational Fluid Dynamics" @ ZIMT, Uni. Siegen

begin
23.Feb.2015 09:00
end
27.Feb.2015 16:00
venue
Universität Siegen, Adolf-Reichwein-Straße 2, 57076 Siegen, Building A, Room: AR-A1007

The course deals with current numerical methods for Computational Fluid Dynamics in the context of high performance computing. An emphasis is placed on explicit methods for compressible flows, but classical numerical methods for incompressible Navier-Stokes equations are also covered. A brief introduction to turbulence modelling is also provided by the course. Additional topics are high order numerical methods for the solution of systems of partial differential equations. The last day is dedicated to parallelization.

Hands-on sessions will manifest the contents of the lectures. In most of these sessions, the application Framework APES will be used. They cover grid generation using Seeder, visualization with ParaView and the usage of the parallel CFD solver Ateles on the local HPC system.

The course is organized by HLRS, IAG (University of Stuttgart) and STS, ZIMT (University of Siegen).

PATC training course "17th VI-HPS Tuning Workshop" @ HLRS

begin
23.Feb.2015 09:30
end
27.Feb.2015 18:00
venue
HLRS, Stuttgart

This workshop organized by VI-HPS for the German PRACE Advanced Training Centre hosted by HLRS will:

  • give an overview of the VI-HPS programming tools suite
  • eexplain the functionality of individual tools, and how to use them effectively
  • offer hands-on experience and expert assistance using the tools

Programme Overview

Presentations and hands-on sessions are planned on the following topics:

  • Setting up, welcome and introduction
  • LWM2 lightweight monitoring
  • Score-P instrumentation and measurement
  • Scalasca automated trace analysis
  • Vampir interactive trace analysis
  • Periscope automated performance analysis
  • Paraver trace analysis and performance prediction
  • MAQAO performance analysis & optimization
  • MUST runtime error detection for MPI
  • MAP profiling and performance reports
  • Cray performance analysis tools

A brief overview of the capabilities of these and associated tools is provided in the VI-HPS Tools Guide.

The workshop will be held in English and run from 09:00 to not later than 18:00 each day, with breaks for lunch and refreshments. For participants from public research institutions in PRACE countries, the course fee is sponsored through the PRACE PATC program. All participants are responsible for their own travel and accommodation.

Classroom capacity is limited, therefore priority will be given to applicants with parallel codes already running on the workshop computer system (Hornet), and those bringing codes from similar Cray systems to work on. Participants are therefore encouraged to prepare their own MPI, OpenMP and hybrid MPI+OpenMP parallel application codes for analysis.

Training course "Introduction to Python" @ JSC

begin
25.Feb.2015 09:00
end
27.Feb.2015 16:30
venue
JSC, Jülich

This course gives an introduction to the programming language Python. Topics are: data types, control structures, object-oriented programming, module usage. Additionally, Python's standard library and the GUI programming with wxWidgets will be explained.

Training course "Industrial Services of the National HPC Centre Stuttgart" @ HLRS

begin
25.Feb.2015 14:00
end
25.Feb.2015 18:30
venue
HLRS Stuttgart

In order to permanently assure their competitiveness, enterprises and institutions are increasingly forced to deliver highest performance. Powerful computers, among the best in the world, can reliably support them in doing so.

This information half-day is targeted towards decision makers in companies that would like to learn more about the advantages of using high performance computers in their field of business. They will be given extensive information about the properties and the capabilities of the computers as well as access methods and security aspects. In addition we present our comprehensive service offering - ranging from individual consulting via training courses to visualization. Real world examples will finally allow an interesting insight into our current activities.

Training course "Introduction to the Usage of High Performance Systems, Visualisation, Compute Cloud and Grid Facilities" @ LRZ

begin
26.Feb.2015 10:00
end
26.Feb.2015 17:00
venue
LRZ Garching

Science is becoming compute and data driven. LRZ offers broad spectrum of systems and services for scientific computing: SuperMUC, one of the national High-End Systems, provides more than 150,000 compute cores and a peak performance of more 3 PetaFlop/s (3 billion or 3*1015 Floatingpoint Operations per seconds) and will be upgraded to more than 6 PetaFlops. The Linux cluster systems at LRZ have several thousand cores, including two systems with more than 3 TeraByte of shared main memory. However, scientific computing is no longer ot limited to supercomputers. Powerful (remote or immersive) visualization facilities are available to visualise and explore the scientific results of simulations. Disk storage, tape archive and backup have reached the capacity of several PetabByte and parallel filesystems offer huge bandwidths to disks. Cloud computing, virtual machines and grid computing emerge as a new paradigm for managing and delivering services over the web to scientists.

Based on usage examples, an easy-to-follow introduction to the systems, their characteristics and limitations will be given, particullarly:

  • SuperMUC, the 6 PetaFlop/s System at LRZ
  • Linux Cluster: HPC systems for the Munich and Bavarian Universities
  • Filesystems, Data Transfer, Snapshots, Backup, and Archive
  • V2C, the Virtual Reality and Visualisation Centre at LRZ
  • Remote Visualisation
  • Software, Compilers and Programming Environment
  • Cloud, Virtualization und Grid Services at LRZ
  • Documentation, Contacts, Servicedesk
  • How to get access, regulations, project proposal
  • Access to other HPC systems in Germany and Europe
  • The Bavarian Competence Network for Technical and Scientific High Performance Computing: "KONWIHR", Partnership initiatives, Application Labs, offers for collaboration
  • Offers for Attended Hosting, Offers to buy-in into HPC

PATC training course "Cray XC40, Parallel I/O, and Optimization Courses" @ HLRS

begin
02.Mar.2015 09:30
end
05.Mar.2015 17:30
venue
HLRS Stuttgart

In late August 2014 we entered the next step of our HPC systems installation phase: the new Cray XC40 super computer is installed. It delivers a peak performance of 4 Petaflops, outperforming the maximum performance of the previous system, Hermit, by a factor of about 4!

This new HPC system provides 500 TB of Main Memory and about 6 PB of disc space. It is equipped with about 100,000 computing cores and features Intel’s next generation of micro processors, which are designed to optimize power savings and promise significant performance enhancements.

The first day is targeted to HERMIT users who will continue their work on HORNET. Specialists from Cray will talk about the hardware and software enhancements between the XE6 and XC40 in order to support your migration towards this new machine.

The second day is dedicated to user parallel IO at scale.

The third and fourth day covers a 2 day introduction workshop about porting and optimizing your application for the Cray XC40. The topics of this workshop include the Cray Programming Environment, scientific libraries and profiling tools.

PATC training course "Fortran for Scientific Computing" @ HLRS

begin
09.Mar.2015 08:30
end
13.Mar.2015 15:30
venue
HLRS Stuttgart

This course is dedicated for scientists and students to learn (sequential) programming with Fortran of scientific applications. The course teaches newest Fortran standards. Hands-on sessions will allow users to immediately test and understand the language constructs. This workshop provides scientific training in Computational Science, and in addition, the scientific exchange of the participants among themselves.

This course is a PATC course (PRACE Advanced Training Centres).

Training course "Parallel Programming of High Performance Systems" @ LRZ

begin
09.Mar.2015 09:00
end
13.Mar.2015 18:00
venue
LRZ Garching

This course, a collaboration of Erlangen Regional Computing Centre (RRZE) and LRZ, is targeted at students and scientists with interest in programming modern HPC hardware, specifically the large scale parallel computing systems available in Jülich, Stuttgart and Munich.

Each day is comprised of approximately 4 hours of lectures and 3 hours of hands-on sessions.

Day 1

  • Introduction to High Performance Computing (Weinberg)
  • Secure shell (Weinberg)
  • Source code versioning with SVN (Guillen)
  • Handling console and GUI based interfaces (Weinberg)
  • Building programs with GNU MAKE (Guillen)

Day 2

  • Basic parallel programming models: elements of MPI and OpenMP (Weinberg)
  • Processor architectures (Hager)

Day 3

  • Principles of code optimization: unrolling, blocking, dependencies, C++ issues, bandwidth issues, performance projections (Hager)
  • Basics of software engineering (Guillen)
  • Advanced MPI programming (Wittmann)

Day 4

  • Advanced OpenMP programming (Weinberg)
  • Performance Libraries (Weinberg)
  • Parallel architectures: multi-core, multi-socket, ccNUMA, cache coherence and affinity, tools for handling memory affinity (Hager)
  • Parallel algorithms: data parallelism, domain decomposition, task parallelism, master-worker, granularity, load balancing, scalability models (Hager)

Day 5

  • Intel tools: MPI tracing and Checking (Karmakar)
  • Intel tools: OpenMP performance and correctness (Wittmann)
  • Performance analysis with Scalasca (Karmakar)

Training course "Iterative Linear Solvers and Parallelization" @ HLRS

begin
16.Mar.2015 08:30
end
20.Mar.2015 15:30
venue
HLRS Stuttgart

The focus is on iterative and parallel solvers, the parallel programming models MPI and OpenMP, and the parallel middleware PETSc. Thereby, different modern Krylov Subspace Methods (CG, GMRES, BiCGSTAB ...) as well as highly efficient preconditioning techniques are presented in the context of real life applications. Hands-on sessions (in C and Fortran) will allow users to immediately test and understand the basic constructs of iterative solvers, the Message Passing Interface (MPI) and the shared memory directives of OpenMP. This course provides scientific training in Computational Science, and in addition, the scientific exchange of the participants among themselves. It is organized by HLRS, IAG, Uni. Kassel, and SFB/TRR30.

PATC training course "Parallel I/O and Portable Data Formats" @ JSC

begin
16.Mar.2015 09:00
end
18.Mar.2015 16:30
venue
JSC, Jülich

Numerical simulations conducted on current high-performance computing (HPC) systems face an ever growing need for scalability. Larger HPC platforms provide opportunities to push the limitations on size and properties of what can be accurately simulated. Therefore, it is needed to process larger data sets, be it reading input data or writing results. Serial approaches on handling I/O in a parallel application will dominate the performance on massively parallel systems, leaving a lot of computing resources idle during those serial application phases.

In addition to the need for parallel I/O, input and output data is often processed on different platforms. Heterogeneity of platforms can impose a high level of maintenance, when different data representations are needed. Portable, selfdescribing data formats such as HDF5 and netCDF are examples of already widely used data formats within certain communities.

This course will start with an introduction to the basics of I/O, including basic, I/O-relevant terms, an overview over parallel file systems with a focus on GPFS, and the HPC hardware available at JSC, giving detailed insight into the I/O subsystem of the Blue Gene/Q architecture. I/O strategies will be presented. The course will introduce the use of the HDF5, the netCDF and the SIONlib library interfaces as well as of parallel I/O (MPI I/O). Optimization potential and best practices are discussed. Participants should have experience in parallel programming with MPI, and either C/C++ or Fortran in particular.

This course is a PRACE Advanced Training Centres (PATC) course.

Training course "Eclipse: C/C++/Fortran programming" @ LRZ

begin
19.Mar.2015 09:00
end
19.Mar.2015 14:30
venue
LRZ Garching

This course is targeted at scientists who wish to be introduced to programming C/C++/Fortran with the Eclipse C/C++ Development Tools (CDT), or the Photran Plugin. Topics covered include:

  • Introduction to Eclipse IDE
  • Introduction to CDT
  • Hands-on with CDT
  • Short introduction and demo of Photran

Training course "Vectorisation and portable programming using OpenCL" @ JSC

begin
23.Mar.2015 09:00
end
24.Mar.2015 16:30
venue
JSC, Jülich

OpenCL provides an open, portable C-based programming model for highly parallel processors. In contrast to NVIDIA's proprietary programming API CUDA, a primary goal of OpenCL is portability across a diverse set of computing devices including CPUs, GPUs, and other accelerators.

Topics covered will include:

  • Introduction to vectorization
  • Programming model OpenCL
  • Datatypes and OpenCL vectorization features
  • Tuning for architectures like CPUs, accelerators (GPUs), and co-processors (Xeon Phi)
  • Heterogeneous multi-device programming

PATC training course "Advanced Topics in High Performance Computing" @ LRZ

begin
07.Apr.2015 09:00
end
10.Apr.2015 18:00
venue
LRZ Garching

In this add-on course to the parallel programming course special topics are treated in more depth, in particular performance analysis, I/O and PGAS concepts. It is provided in collaboration of Erlangen Regional Computing Centre (RRZE) and LRZ within KONWIHR.

Each day is comprised of approximately 5 hours of lectures and 2 hours of hands-on sessions.

Day 1

  • Processor-specific optimization strategies: compiler switches, avoiding cache thrashing, exploiting SIMD capabilities (Treibig)

Day 2

  • Introduction to Intel Xeon Phi (Weinberg)
  • OpenMP 4.0 (Weinberg)
  • Parallel I/O with MPI IO (Wittmann)

Day 3

  • Tuning I/O on LRZ's HPC systems (Mendez)
  • Portability of I/O: Binary files, NetCDF, HDF5, SIONlib (Mendez)

Day 4

  • PGAS programming with coarray Fortran and Unified Parallel C (Bader)
  • PGAS hands on session

Prerequisites: Good MPI and OpenMP knowledge as presented in the course "Parallel programming of High Performance Systems".

Training course "Tools for Parallel Programming with OmpSs" @ HLRS

begin
13.Apr.2015 09:00
end
15.Apr.2015 16:00
venue
HLRS Stuttgart

OmpSs is a task-parallel data-dependency honoring programming model developed amongst other in the EC FP7 project Mont Blanc. This course will give an introduction to the usage of development tools for OmpSs. The participants will learn how to use the debugging tools Allinea DDT and Temanejo. The second part of the course will discuss the software development process for Exascale applicaitions.

Training course "Programming in C++ for C programmers" @ JSC

begin
13.Apr.2015 09:00
end
20.Apr.2015 16:30
venue
JSC, Jülich

C++ is a multi-paradigm programming language supporting procedural, object-oriented, generic and functional programming styles. In this course, the current standard of the language, C++11, will be introduced to participants familiar with C. Minor changes expected in the revision C++14 will be also be introduced.

The course will run in two parts: 13-15 April and 16-20 April 2015. The first half will introduce the C++ (C++11) syntax. Through a number of simple but instructive exercises, the participants will learn the C++ syntax and familiarise themselves with elements of object oriented, generic and functional programming. The Standard Template Library for C++11 will be introduced in sufficient detail to be useful.

The second half will be about graphics, Boost libraries and multicore
performance. Brief introductions will be given to :

  • graphical user interfaces using Qt5.
  • Boost C++ libraries
  • Intel (R) Threading Building Blocks

This course is designed for participants with previous programming experience, and introduces the current standard of C++. It cannot serve as a beginners' introduction to programming.

PATC training course "OpenACC Programming for Parallel Accelerated Supercomputers" @ HLRS

begin
16.Apr.2015 09:00
end
17.Apr.2015 16:30
venue
HLRS Stuttgart

This workshop will cover the programming environment of the Cray XK7 hybrid supercomputer, which combines multicore CPUs with GPU accelerators (http://www.cray.com/Products/Computing/XK7.aspx). Attendees will learn about the directive-based OpenACC programming model (http://www.openacc-standard.org), whose multi-vendor support allows users to portably develop applications for parallel accelerated supercomputers.
The workshop will also demonstrate how to use the Cray Programming Environment tools to identify CPU application bottlenecks, facilitate the OpenACC porting, provide accelerated performance feedback and to tune the ported applications. The Cray scientific libraries for accelerators will be presented, and interoperability of OpenACC directives with these and with CUDA will be demonstrated. Through application case studies and tutorials, users will gain direct experience of using OpenACC directives in realistic applications. An outlook to OpenMP-4.0 accelerator support will be added.
Users may also bring their own codes to discuss with Cray specialists or begin porting.
This course provides scientific training in Computational Science, and in addition, the scientific exchange of the participants among themselves.

Training course "Automatic Tuning of HPC Applications with Periscope" @ LRZ

begin
19.Apr.2015 15:00
end
19.Apr.2015 17:00
venue
LRZ Garching

This course will introduce the Periscope Tuning Framework (PTF) that was developed in the European AutoTune project (www.autotune-project.eu). It supports programmers of HPC applications in performance analysis and automatic tuning. PTF automates application tuning with respect to the best compiler flag combination of the Intel compilers on SuperMUC as well as for the best settings of MPI library parameters. In addition, it provides automatic means to determine the best processor clock frequency optimizing energy efficiency.

PATC training course "GPU programming with CUDA" @ JSC

begin
20.Apr.2015 09:00
end
22.Apr.2015 16:30
venue
JSC, Jülich

GPU-accelerated computing drives current scientific research. Writing fast numeric algorithms for GPUs offers high application performance by offloading compute-intensive portions of the code to an NVIDIA GPU. The course will cover basic aspects of GPU architectures and programming. Focus is on the usage of the parallel programming language CUDA-C which allows maximum control of NVIDIA GPU hardware. Examples of increasing complexity will be used to demonstrate optimization and tuning of scientific applications.

Topics covered will include:

  • Introduction to GPU/Parallel computing
  • Programming model CUDA
  • GPU libraries like CuBLAS and CuFFT
  • Tools for debugging and profiling
  • Performance optimizations

This course is a PATC course (PRACE Advanced Training Centres).

Training course "GPU Programming using CUDA" @ HLRS

begin
20.Apr.2015 12:30
end
22.Apr.2015 16:00
venue
HLRS Stuttgart

The course provides an introduction to the programming language CUDA which is used to write fast numeric algorithms for NVIDIA graphics processors (GPUs). Focus is on the basic usage of the language, the exploitation of the most important features of the device (massive parallel computation, shared memory, texture memory) and efficient usage of the hardware to maximize performance. An overview of the available development tools and the advanced features of the language is given. This course provides scientific training in Computational Science, and in addition, the scientific exchange of the participants among themselves.

PATC training course "Introduction to Unified Parallel C (UPC) and Co-Array Fortran (CAF)" @ HLRS

begin
23.Apr.2015 08:30
end
24.Apr.2015 15:30
venue
HLRS Stuttgart

Partitioned Global Address Space (PGAS) is a new model for parallel programming. Unified Parallel C (UPC) and Co-array Fortran (CAF) are PGAS extensions to C and Fortran. UPC and CAF are language extensions to C and Fortran. Parallelism is part of the language. PGAS languages allow any processor to directly address memory/data on any other processors. Parallelism can be expressed more easily compared to library based approaches as MPI. This course gives an introduction to this novel approach of expressing parallelism. Hands-on sessions (in UPC and/or CAF) will allow users to immediately test and understand the basic constructs of PGAS languages. This course provides scientific training in Computational Science, and in addition, the scientific exchange of the participants among themselves.

PATC training course "Intel MIC&GPU Programming Workshop" @ LRZ

begin
27.Apr.2015 09:00
end
29.Apr.2015 18:00
venue
LRZ Garching

With the rapidly growing demand for computing power new accelerator based architectures have entered the world of high performance computing since around 5 years. Particularly GPGPUs have recently become very popular, however programming GPGPUs using programming languages like CUDA or OpenCL is cumbersome and error-prone. Beyond introducing the basics of GPGPU-porogramming, we mainly present OpenACC as an easier way to program GPUs using OpenMP-like pragmas. Recently Intel developed their own Many Integrated Core (MIC) architecture which can be programmed using standard parallel programming techniques like OpenMP and MPI. In the beginning of 2013, the first production-level cards named Intel Xeon Phi came on the market. The course discusses various programming techniques for Intel Xeon Phi and includes several hands-on sessions on the GPU cluster of LRZ and the new SuperMIC system. The course is developed in collaboration with the Erlangen Regional Computing Centre (RRZE) within KONWIHR.

Each day is comprised of approximately 5 hours of lectures and 2 hours of hands-on sessions.

Training course "Efficient Parallel Programming with GASPI" @ HLRS

begin
27.Apr.2015 10:45
end
27.Apr.2015 16:00
venue
HLRS Stuttgart

In this tutorial we present an asynchronous dataflow programming model for Partitioned Global Address Spaces (PGAS) as an alternative to the programming model of MPI.
GASPI, which stands for Global Address Space Programming Interface, is a partitioned global address space (PGAS) API. The GASPI API is designed as a C/C++/Fortran library and focused on three key objectives: scalability, flexibility and fault tolerance. In order to achieve its much improved scaling behaviour GASPI aims at asynchronous dataflow with remote completion, rather than bulk-synchronous message exchanges. GASPI follows a single/multiple program multiple data (SPMD/MPMD) approach and offers a small, yet powerful API (see also http://www.gaspi.de and http://www.gpi-site.com).
GASPI is successfully used in academic and industrial simulation applications.
Hands-on sessions (in C and Fortran) will allow users to immediately test and understand the basic constructs of GASPI.
This course provides scientific training in Computational Science, and in addition, the scientific exchange of the participants among themselves.

Training course "Scientific Visualization" @ HLRS

begin
28.Apr.2015 09:00
end
29.Apr.2015 15:30
venue
HLRS Stuttgart

This two day course is targeted at researchers with basic knowledge in numerical simulation, who would like to learn how to visualize their simulation results on the desktop but also in Augmented Reality and Virtual Environments. It will start with a short overview of scientific visualization, following a hands-on introduction to 3D desktop visualization with COVISE. On the second day, we will discuss how to build interactive 3D Models for Virtual Environments and how to set up an Augmented Reality visualization. This course provides scientific training in Computational Science, and in addition, the scientific exchange of the participants among themselves.

Training course "LRZ Compute Cloud" @ LRZ

begin
12.May.2015 09:00
end
12.May.2015 18:00
venue
LRZ Garching

This course will introduce you to one of our new services: the LRZ Compute Cloud. This Infrastructure-as-a-Service offer is based on the open source software OpenNebula and meant to help researchers dynamically adjust resources to their computing needs. The workshop will be held by OpenNebula engineers and includes sessions for beginners as well as advanced Cloud users. The aim is to make LRZ customers familiar with this new service and enable them to benefit the most from the LRZ Compute Cloud.

Training course "Introduction to the programming and usage of the supercomputing resources at Jülich" @ JSC

begin
18.May.2015 13:00
end
19.May.2015 16:30
venue
JSC, Jülich

Through the John von Neumann Institute for Computing, Research Centre Juelich provides two major high-performance computing resources to scientific user groups from throughout Germany and Europe. The aim of this course is to give new users of the supercomputing resources an introductory overview of the systems and their usage, and to help them in making efficient use of their allocated resources.

Training course "High-performance computing with Python" @ JSC

begin
28.May.2015 09:00
end
29.May.2015 16:30
venue
JSC, Jülich

Python is being increasingly used in high-performance computing projects. It can be used either as a high-level interface to existing HPC applications and libraries, as embedded interpreter, or directly.

This course combines lectures and hands-on session. We will show how Python can be used on parallel architectures and how performance critical parts of the kernel can be optimized using various tools.

Day 1: Using Python productively for parallel computing

  • Interactive parallel programming with IPython
  • High-performance NumPy and SciPy
  • Distributed-memory parallel programming with Python and MPI

Day 2: Python in concert with other programming languages and accelerators

  • Cython
  • f2py
  • PyCUDA
  • PyOpenCL
  • Numba

This course is aimed at scientists who wish to explore the productivity gains made possible by Python for HPC.

Training course "Recent Advances in Parallel Programming Languages" @ LRZ

begin
08.Jun.2015 09:00
end
08.Jun.2015 16:00
venue
LRZ Garching

As the standards of parallel programming languages are getting more and more complex and extensive, it can be hard to stay up to date with recent developments. We have thus invited leading HPC experts to give updates of recent advances in parallel programming languages.

Languages covered during the workshop are MPI, OpenMP, OpenACC and Coarray Fortran. Most of the speakers are members of the standardisation committee of the language they present.

Training course "Introduction to OpenFOAM" @ LRZ

begin
09.Jun.2015 09:00
end
11.Jun.2015 17:00
venue
LRZ Garching

This three-day introductory course into OpenFOAM® is intended for new users who want to learn the basic concepts of its usage and want to know how to modify existing applications or add new functionalities.
Among others the course covers the topics:

  • Introduction to working with Linux
  • OpenFOAM® file structure and case setup
  • Setting up and running simulations
  • Evaluating and visualizing results with ParaView
  • Selection of numerical methods
  • Creating and converting meshes
  • Computing in parallel and acceleration on GPUs
  • Implementation of new methods
  • Advanced topics in OpenFOAM®

The course is held from 9:00 to 17:00 each day and will be comprised of approximately 4 hours of lectures and 3 hours of hands-on sessions, the language is English.

Training course "Cluster Workshop" @ HLRS

begin
29.Jun.2015 13:00
end
30.Jun.2015 17:00
venue
HLRS Stuttgart

Nowadays, the IT infrastructure of many companies and institutions includes modern compute clusters. The procurement, operation and the efficient usage of such parallel systems introduces new and complex requirements.

To address these emerging requirements, the High Performance Computing Center of the University of Stuttgart (HLRS) offers a vendor-independent workshop. Topics span from the design of compute clusters to details on different hardware components, operating systems, file systems and modes of operation, touching on specific software solutions. Further, typical problems and strategies for their solution will be discussed.

HLRS has been running compute clusters for many years, providing compute resources for scientific and industrial simulations. HLRS is in constant dialogue with users and hardware providers and has accumulated a large knowledge base in cluster computing.

Training course "Industrial Services of the National HPC Centre Stuttgart" @ HLRS

begin
01.Jul.2015 14:00
end
01.Jul.2015 18:30
venue
HLRS Stuttgart

In order to permanently assure their competitiveness, enterprises and institutions are increasingly forced to deliver highest performance. Powerful computers, among the best in the world, can reliably support them in doing so.

This information half-day is targeted towards decision makers in companies that would like to learn more about the advantages of using high performance computers in their field of business. They will be given extensive information about the properties and the capabilities of the computers as well as access methods and security aspects. In addition we present our comprehensive service offering - ranging from individual consulting via training courses to visualization. Real world examples will finally allow an interesting insight into our current activities.

PATC Training course "Node-level performance engineering" @ HLRS

begin
06.Jul.2015 09:00
end
07.Jul.2015 17:00
venue
HLRS Stuttgart

This course teaches performance engineering approaches on the compute node level. "Performance engineering" as we define it is more than employing tools to identify hotspots and bottlenecks. It is about developing a thorough understanding of the interactions between software and hardware. This process must start at the core, socket, and node level, where the code gets executed that does the actual computational work. Once the architectural requirements of a code are understood and correlated with performance measurements, the potential benefit of optimizations can often be predicted. We introduce a "holistic" node-level performance engineering strategy, apply it to different algorithms from computational science, and also show how an awareness of the performance features of an application may lead to notable reductions in power consumption.
This course provides scientific training in Computational Science, and in addition, the scientific exchange of the participants among themselves.

Training course "User-Guided Optimization in High-Level Languages" @ HLRS

begin
08.Jul.2015 09:30
end
08.Jul.2015 17:00
venue
HLRS Stuttgart

While writing code in High-level languages, HPC-programmers often have a notion of gainful optimization strategies, that should be applied to their code. Nevertheless, nowadays compilers generally use heuristics to decide on optimization strategies. To lower this gap, we will present new ideas and tools to raise the programmers control over compiler optimisations, i.e.

1) Noise - trigger optimizations by annotations
2) Sierra - SIMD computations with compound data types
3) AnyDSL - create DSLs with associated optimization strategies

All of these tools will also be applied in hands-on sessions. In addition, an overview of available optimization strategies will be given by compiler experts.

Noise and Sierra are limited to C/C++, even though the underlying concepts ought to be applicable also to other imperative languages, particularly Fortran. AnyDSL uses a dialect of the Rust programming language.

Training course "Introduction to parallel programming with MPI and OpenMP for JSC guest students" @ JSC

begin
11.Aug.2015 09:00
end
14.Aug.2015 16:30
venue
JSC, Jülich

An introduction to the parallel programming of supercomputers is given. The focus is on the usage of the Message Passing Interface (MPI), the most often used programming model for systems with distributed memory. Furthermore, OpenMP will be presented, which is often used on shared-memory architectures.

Knowledge of Fortran, C or C++ is a prerequisite. The course is intended for guest students at JSC. Additional participants can take part in the course after consulting Florian Janetzko at JSC.

Training course "Iterative linear solvers and parallelization" @ LRZ

begin
07.Sep.2015 08:30
end
11.Sep.2015 15:30
venue
LRZ Garching

The focus of this compact course is on iterative and parallel solvers, the parallel programming models MPI and OpenMP, and the parallel middleware PETSc.

Different modern Krylov Subspace Methods (CG, GMRES, BiCGSTAB ...) as well as highly efficient preconditioning techniques are presented in the context of real life applications.

Hands-on sessions (in C and Fortran) will allow users to immediately test and understand the

  • basic constructs of iterative solvers
  • the Message Passing Interface (MPI)
  • the shared memory directives of OpenMP.

This course is organized by the University of Kassel, the high performance computing centre of Stuttgart (HLRS) and IAG.

PATC Training course "Advanced Fortran Topics" @ LRZ

begin
14.Sep.2015 08:30
end
18.Sep.2015 18:00
venue
LRZ Garching

This course is targeted at scientists who wish to extend their knowledge of Fortran beyond what is provided in the Fortran 95 standard. Some other tools relevant for software engineering are also discussed. Topics covered include

  • object oriented features
  • design patterns
  • generation and handling of shared libraries
  • mixed language programming
  • standardized IEEE arithmetic and exceptions
  • some I/O extensions from Fortran 2003
  • parallel programming with coarrays

To consolidate the lecture material, each day's approximately 4 hours of lecture are complemented by 3 hours of hands-on sessions.

Training course "Introduction to Computational Fluid Dynamics" @ HLRS

begin
14.Sep.2015 09:00
end
18.Sep.2015 16:00
venue
HLRS Stuttgart

The course deals with current numerical methods for Computational Fluid Dynamics. The emphasis is placed on explicit finite volume methods for the compressible Euler equations. Moreover outlooks on implicit methods, the extension to the Navier-Stokes equations and turbulence modelling are given. Additional topics are classical numerical methods for the solution of the incompressible Navier-Stokes equations, Aeracoustics and high order numerical methods for the solution of systems of partial differential equations. The last day is dedicated to parallelization of explicit and implicit solvers.

Hands-on sessions will manifest the contents of the lectures. The emphasis of these session is put on the application of CFD codes, especially on grid generation, visualization and the interpretation of results. Furthermore the implementation of algorithms presented in the lectures points up the general structure of CFD codes.

The course is organized by the HLRS, the IAG, the STS at the University of Siegen and the University of Kassel. It is based on the course "Numerical Gasdynamics" held at the IAG which has been awarded the "Landeslehrpreis (prize for excellence in teaching) Baden-Württemberg 2003" (held at Uni. Stuttgart, under auspices of the BMBF project NUSS, contract 08NM227).

PATC training course "Parallel Programming Workshop (MPI, OpenMP and advanced topics)" @ HLRS

begin
28.Sep.2015 08:30
end
02.Oct.2015 16:30
venue
HLRS Stuttgart

Distributed memory parallelization with the Message Passing Interface MPI (Mon+Tue, for beginners):
On clusters and distributed memory architectures, parallel programming with the Message Passing Interface (MPI) is the dominating programming model. The course gives an full introduction into MPI-1. Further aspects are domain decomposition, load balancing, and debugging. An MPI-2 overview and the MPI-2 one-sided communication is also taught. Hands-on sessions (in C and Fortran) will allow users to immediately test and understand the basic constructs of the Message Passing Interface (MPI).

Shared memory parallelization with OpenMP (Wed, for beginners):
The focus is on shared memory parallelization with OpenMP, the key concept on hyper-threading, dual-core, multi-core, shared memory, and ccNUMA platforms. This course teaches shared memory OpenMP parallelization. Hands-on sessions (in C and Fortran) will allow users to immediately test and understand the directives and other interfaces of OpenMP. Race-condition debugging tools are also presented.

Advanced topics in parallel programming (Thu+Fri):
Topics are MPI-2 parallel file I/O, hybrid mixed model MPI+OpenMP parallelization, MPI-3.0, parallelization of explicit and implicit solvers and of particle based applications, parallel numerics and libraries, and parallelization with PETSc. MPI-3.0 introduced a new shared memory programming interface, which can be combined with MPI message passing and remote memory access on the cluster interconnect. It can be used for direct neighbor accesses similar to OpenMP or for direct halo copies, and enables new hybrid programming models. These models are compared in the hybrid mixed model MPI+OpenMP parallelization session with various hybrid MPI+OpenMP approaches and pure MPI.

Hands-on sessions are included on all days. This course provides scientific training in Computational Science, and in addition, the scientific exchange of the participants among themselves.

Training course "C for Beginners" @ LRZ

begin
05.Oct.2015 09:00
end
07.Oct.2015 12:30
venue
LRZ Garching

This three-day course gives an introduction to the C programming language. The following topics will be covered:

Monday schedule:

  • Basic Concepts
  • Hello World Compilation
  • Datatypes
  • Operators and Basic statements
  • First examples

Tuesday schedule:

  • C-Functions
  • Code modularity
  • Compilation, Debugging
  • Compiler directives
  • Structures

Wednesday schedule:

  • Memory model
  • Pointers
  • Function pointers
  • Good coding practices

Contents are subject to modifications.

Course participants should have basic UNIX/Linux knowledge (login with secure shell, shell commands, simple scripts, editor vi or emacs). The second requisite is to have basic knowledge on other programming language/scripting language.

Training course "C++ for Beginners" @ LRZ

begin
19.Oct.2015 09:00
end
22.Oct.2015 12:30
venue
LRZ Garching

This four-day course gives an introduction to the C++ programming language. The following topics will be covered:

Monday schedule:

  • Reminder of C concepts
  • C++ Basics
  • C++ Pointers
  • Classes methods and objects
  • Constructors and destructors

Tuesday schedule:

  • Methods implementation and examples
  • Namespaces
  • Class Design
  • I/O operations
  • Strings

Wednesday schedule:

  • Error handling and exceptions
  • C++ containers iterators
  • Iterators

Thursday schedule:

  • Inheritance
  • Operators overloading
  • Templates
  • Good coding practices

Contents are subject to modifications.

Training course "Introduction to GPU programming using OpenACC" @ JSC

begin
19.Oct.2015 09:00
end
20.Oct.2015 16:30
venue
JSC, Jülich

GPU-accelerated computing drives current scientific research. Writing fast numeric algorithms for GPUs offers high application performance by offloading compute-intensive portions of the code to the GPU. The course will cover basic aspects of GPU architectures and programming. Focus is on the usage of the directive-based OpenACC programming model which allows for portable application development. Examples of increasing complexity will be used to demonstrate optimization and tuning of scientific applications.

Topics covered will include:

  • Introduction to GPU/Parallel computing
  • Programming model OpenACC
  • Interoperability of OpenACC with GPU libraries like CuBLAS and CuFFT
  • Tools for debugging and profiling
  • Performance optimization

Training course "Cray XC40, Parallel I/O, and Optimization Courses" @ HLRS

begin
20.Oct.2015 09:30
end
23.Oct.2015 17:30
venue
HLRS Stuttgart

In late August 2014 we entered the next step of our HPC systems installation phase: the new Cray XC40 super computer is installed. It delivers a peak performance of 4 Petaflops, outperforming the maximum performance of the previous system, Hermit, by a factor of about 4!

This new HPC system provides 500 TB of Main Memory and about 6 PB of disc space. It is equipped with about 100,000 computing cores and features Intel’s next generation of micro processors, which are designed to optimize power savings and promise significant performance enhancements.

The first day is targeted to HERMIT users who will continue their work on HORNET. Specialists from Cray will talk about the hardware and software enhancements between the XE6 and XC40 in order to support your migration towards this new machine.

The second day is dedicated to user parallel IO at scale.

The third and fourth day covers a 2 day introduction workshop about porting and optimizing your application for the Cray XC40. The topics of this workshop include the Cray Programming Environment, scientific libraries and profiling tools.

Training course "GPU Programming using CUDA" @ HLRS

begin
26.Oct.2015 12:30
end
28.Oct.2015 16:00
venue
HLRS Stuttgart

The course provides an introduction to the programming language CUDA which is used to write fast numeric algorithms for NVIDIA graphics processors (GPUs). Focus is on the basic usage of the language, the exploitation of the most important features of the device (massive parallel computation, shared memory, texture memory) and efficient usage of the hardware to maximize performance. An overview of the available development tools and the advanced features of the language is given. (This course has the same content as the course in spring.) This course provides scientific training in Computational Science, and in addition, the scientific exchange of the participants among themselves.

Training course "Introduction to parallel computing" @ JSC

begin
26.Oct.2015 13:00
end
26.Oct.2015 17:00
venue
JSC, Jülich

This course will present the most fundamental concepts, methods, and technologies of high-performance computing systems and the necessary parallel programming associated with it. After introducing the basic terminology and vocabulary, an overview about parallel computer architectures is given introducing shared memory, distributed memory, and hybrid computer systems including latest trends like many-core CPUs and hardware acceleration via GPUs. Next, the basics of parallel programming are explained including an introduction to message-passing and multi-threaded programming with the industry standards MPI and OpenMP. Finally, it describes the very basics of debugging, performance analysis, and optimization of parallel programs. The presentation closes with a summary of issues and open research topics of high-performance computing for the next decade namely heterogeneity, reliability, power consumption, and extreme concurrency.

This tutorial addresses managers, system administrators, and application programmers new to the field of high-performance computing (HPC) and interested in an introduction HPC systems and parallel programming. Basic knowledge in a sequential programming language like C, C++ or Fortran is helpful to better understand the examples presented in the 2nd half of the talk ("Introduction to parallel programming").

Training course "Advanced C++ with Focus on Software Engineering" @ LRZ

begin
02.Nov.2015 09:00
end
04.Nov.2015 17:00
venue
LRZ Garching

This advanced C++ training is a course on object-oriented (OO) software design with the C++ programming language. The focus of the training are the essential OO and C++ software development principles, concepts, idioms, and best practices, which enable programmers to create professional, high-quality code. The course will not address special areas and applications of C++, such as for instance Template Meta Programming (TMP), or the quirks and curiosities of the C++ language. It rather teaches guidelines to develop mature, robust, and maintainable C++ code. The following topics will be covered:

Monday schedule:

  • Essential Object-Oriented Design Principles

    • The core of object-oriented programming
    • The SOLID principles
  • Concepts and the STL

    • Overview of the STL
    • Proper use of the STL
  • Class Design

    • Know what your compiler does for you
    • Inside/Outside: What should (not) be inside a class?

Tuesday schedule:

  • Class Design (cont.)

    • Const Correctness
    • Interface design
    • Visibility vs. Accessibility
  • Robust Code

    • Error propagation
    • Exception Safety
    • RAII
    • Handling Legacy Code
  • Proper Use of Dynamic Inheritance

    • Non-public inheritance
    • Public inheritance

Wednesday schedule:

  • Dependency-Breaking Techniques
  • Non-Intrusive Design
  • C++11/14 Update

Contents are subject to modifications.

Training course "Scientific Visualization" @ HLRS

begin
05.Nov.2015 09:00
end
06.Nov.2015 15:30
venue
HLRS Stuttgart

This two day course is targeted at researchers with basic knowledge in numerical simulation, who would like to learn how to visualize their simulation results on the desktop but also in Augmented Reality and Virtual Environments. It will start with a short overview of scientific visualization, following a hands-on introduction to 3D desktop visualization with COVISE. On the second day, we will discuss how to build interactive 3D Models for Virtual Environments and how to set up an Augmented Reality visualization. This course provides scientific training in Computational Science, and in addition, the scientific exchange of the participants among themselves.

Training course "Data analysis and data mining with Python" @ JSC

begin
09.Nov.2015 09:00
end
11.Nov.2015 16:30
venue
JSC, Jülich

Pandas, matplotlib, and scikit-learn make Python a powerful tool for data analysis, data mining, and visualization. All of these packages and many more can be combined with IPython to provide an interactive extensible environment.

In this course, we will explore matplotlib for visualization, pandas for time series analysis, and scikit-learn for data mining. We will use IPython to show how these and other tools can be used to facilitate interactive data analysis and exploration.

Day 1: Basic data analysis and visualization

  • Introduction to IPython for interactive data analysis.
  • pandas
  • NumPy
  • matplotlib

Day 2: Advanced data analysis visualization

  • pandas
  • Statsmodels
  • Mayavi2

Day 3: Advanced topics

  • Portable data formats
  • scikit-learn
  • PyMAFIA

This course is aimed at scientists who wish to explore the productivity gains made possible by Python for data analysis.

Training course "Industrial Services of the National HPC Centre Stuttgart" @ HLRS

begin
11.Nov.2015 14:00
end
11.Nov.2015 18:30
venue
HLRS Stuttgart

In order to permanently assure their competitiveness, enterprises and institutions are increasingly forced to deliver highest performance. Powerful computers, among the best in the world, can reliably support them in doing so.

This information half-day is targeted towards decision makers in companies that would like to learn more about the advantages of using high performance computers in their field of business. They will be given extensive information about the properties and the capabilities of the computers as well as access methods and security aspects. In addition we present our comprehensive service offering - ranging from individual consulting via training courses to visualization. Real world examples will finally allow an interesting insight into our current activities.

Training course "Introduction to the programming and usage of the supercomputing resources at Jülich" @ JSC

begin
26.Nov.2015 13:00
end
27.Nov.2015 16:30
venue
JSC, Jülich

Through the John von Neumann Institute for Computing, Research Centre Juelich provides two major high-performance computing resources to scientific user groups from throughout Germany and Europe. The aim of this course is to give new users of the supercomputing resources an introductory overview of the systems and their usage, and to help them in making efficient use of their allocated resources.

Training course "Advanced parallel programming with MPI and OpenMP" @ JSC

begin
30.Nov.2015 09:00
end
01.Dec.2015 16:30
venue
JSC, Jülich

This course is given in German.

The focus is on advanced programming with MPI and OpenMP. The course addresses participants who have already some experience with C/C++ or Fortran and MPI and OpenMP, the most popular programming models in high performance computing (HPC). The course will teach newest methods in MPI-3.0/3.1 and OpenMP-4.0, which were developed for the efficient use of current HPC hardware. Topics with MPI are the group and communicator concept, process topologies, derived datatypes, the new MPI-3.0 Fortran language binding, one-sided communication and the new MPI-3.0 shared memory programming model within MPI. Topics with OpenMP are the OpenMP-4.0 extensions, as the vectorization directives, thread affinity and OpenMP places. (The GPU programming with OpenMP-4.0 directives is not part of this course.) The course also contains performance and best practice considerations, e.g., with hybrid MPI+OpenMP parallelisation. Hands-on sessions (in C and Fortran) will allow users to immediately test and understand the teached constructs of the Message Passing Interface (MPI) and the shared memory directives of OpenMP. This course provides scientific training in Computational Science, and in addition, the scientific exchange of the participants among themselves. It is organized by JSC in collaboration with HLRS. (Content Level: 20% for beginners, 50% intermediate, 30% advanced)

Training course "Fortran for Scientific Computing" @ HLRS

begin
07.Dec.2015 10:00
end
11.Dec.2015 15:00
venue
HLRS Stuttgart

This course is dedicated for scientists and students to learn (sequential) programming with Fortran of scientific applications. The course teaches newest Fortran standards. Hands-on sessions will allow users to immediately test and understand the language constructs. This workshop provides scientific training in Computational Science, and in addition, the scientific exchange of the participants among themselves.

PATC Training course "Node-level performance engineering" @ LRZ

begin
10.Dec.2015 09:00
end
11.Dec.2015 17:00
venue
LRZ Garching

This course teaches performance engineering approaches on the compute node level. "Performance engineering" as we define it is more than employing tools to identify hotspots and bottlenecks. It is about developing a thorough understanding of the interactions between software and hardware. This process must start at the core, socket, and node level, where the code gets executed that does the actual computational work. Once the architectural requirements of a code are understood and correlated with performance measurements, the potential benefit of optimizations can often be predicted. We introduce a "holistic" node-level performance engineering strategy, apply it to different algorithms from computational science, and also show how an awareness of the performance features of an application may lead to notable reductions in power consumption.