Search this site
Embedded Files
Taiwan Math. School
  • Home
  • Programs
    • A-Number Theory and Representation Theory
    • B-Algebraic Geometry
    • C-Differential Geometry and Geometrical Analysis
    • D-Differential Equations and Stochastic Analysis
    • E-Scientific Computing
    • F-Interdisciplinary Studies
  • Course List
    • 2025
      • From Differential Geometry to tt* Geometry-(2)
      • Geometry, Algebra, and Topology with a view towards application and computa
    • 2024
      • Differential Forms in Algebraic Topology
      • Continuum Mechanics
      • From Differential Geometry to tt* Geometry-(1)
      • Normal Approximation and Related Topics
    • 2023
      • Grassmann Algebra
    • 2022
      • Real Analysis (Ⅱ)
      • Analytic Number Theory
      • Geometry and Quantum Field Theory
      • Introduction to Drinfeld Modules and Drinfeld Modular Varieties
      • Machine Learning for PDEs
    • 2021
      • Arithmetic Dynamics for Rational Dominant Self-maps of Projective Varieties
      • Real Analysis (I)
      • Algebraic Combinatorics (I)
      • Continuation Method: Theory and Application
      • Introduction to Riemann Surfaces
      • NTU Math Course
      • Algebraic Number Theory II
      • Complexity and Symbolic Dynamics of Dynamical Systems (Cancelled)
      • Multiscale Analysis of Random Processes (Cancelled)
      • Algebraic Combinatorics II
      • Topics in Geometric Measure Theory (Il)
      • Mathematical Foundation toward Artificial Intelligence in Medicine
    • 2020
      • Statistical Foundations of Medical AI: Survival Analysis
      • Statistical Foundations of Medical AI: Generalized Linear Model
      • Representation Theory: Mini course on Springer Fibers and Quiver Varieties
      • Symbolic Dynamics on Groups and Countable State Topological Markov Shifts
      • Topics in Geometric Measure Theory (I)
      • Statistical Foundations of Medical AI: Linear Regression
      • Algebraic Combinatorics
      • Algebraic Number Theory
      • Imaging Principles in Medical AI
      • Geometric Measure Theory Ⅱ
      • Topics on Drinfeld Modules and T-Motives Ⅱ
      • Dynamics in Network Systems
      • Advanced Course on Multi-Threaded Parallel Programming using OpenMP for Mul
      • Parallel Finite Element Method Using Supercomputer
    • 2019
      • Topics on Drinfeld Modules and T-Motives l
      • Dynamical System: Deterministic and Chaotic Behavior of Model Systems
      • Geometric Measure Theory I
      • 2019 NCTS Summer Course
        • Mathematical Modeling and Analysis of Infectious Diseases
        • MSRI SUMMER SCHOOL ON TORIC VARIETIES
      • Boltzmann Equations
      • Introduction to Machine Learning and Deep Learning with Python
      • Algebraic Surfaces
      • Introduction to Parallel Programming for Multicore/Manycore Clusters
    • 2018
      • Introduction to Automorphic Representations on GL(2)
      • Kinetic Equations and Related Topics
      • 2018 NCTS Summer Course
        • Fluid, Water Wave and Phase Transition Problems
        • Introduction to Parallel Computing (II)
        • Mathematical Modeling and Analysis of Infectious
      • Reaction-Diffusion and Mathematical Sciences
      • Lectures on Lagrangian Floer Theory
      • An Introduction to Geometric Measure Theory
      • Topics in Random Matrix Theory
      • Introduction to Parallel Programming for Multicore/Manycore Clusters
      • Scientific Computing and Machine Learning on Multi- and Manycore Architectu
      • Derived and Homological Algebraic GeometryWinter School
    • 2017
      • High-Performance Numerical Solvers
      • Derived Category in Algebraic Geometry
      • Kinetic Theory and Introduction to Shock Wave Theory​​
  • Media Archive
  • Overseas Opportunities
  • NCTS
Taiwan Math. School

Introduction to Parallel Programming for Multicore

/Manycore Clusters

9:00 - 17:00, February 11-14, 2019

Room 440, Astronomy-Mathematics Building, NTU

Instructor:

Kengo Nakajima (University of Tokyo)

Takahiro Katagiri (Nagoya University)

Organizers:

Weichung Wang (National Taiwan University)

Background & Purpose:

In order to make full use of modern supercomputer systems with multicore/manycore architectures, hybrid parallel programming with message-passing and multithreading is essential. MPI for message-passing and OpenMP for multithreading are the most popular ways for parallel programming on multicore/manycore clusters.

This 4-day tutorial provides essential knowledge and experiences for parallel programming using MPI and OpenMP. Hands-on exercise by the Readbush-U supercomputer at the University of Tokyo (Intel Broadwell-EP) is also given. (https://www.cc.u-tokyo.ac.jp/system/reedbush/index-e.html).

In this course, OpenMP, MPI and OpenMP/MPI Hybrid are applied to 3D Poisson equation solver by finite-volume method (FVM) with preconditioned conjugate gradient iterative method (PCG). Detailed lectures on data structure for parallel FVM, as well as fundamental trainings for MPI and OpenMP are also provided.

The 4th day of the course will be spent for lectures and hands-on on more advanced topics, such as automatic tuning (AT), and large-scale parallel computing.

預備知識 (Prerequisites)

  • Experiences in Unix/Linux

  • Experiences in emacs or vi

  • Experiences of programming (Fortran or C/C++)

  • Fundamental numerical algorithms (Gaussian Elimination, LU Factorization, Jacobi/Gauss-Seidel/SOR Iterative Solvers)

  • Experiences in SSH Public Key Authentication Method

相關軟體 (Software)

  • Windows:

      • Cygwin

      • Please make sure to install

          • gcc (C) or gfortran (Fortran) from “Devel”

          • OpenSSH from “Net”

      • ParaView

  • MacOS, UNIX/Linux

      • ParaView

  • Cygwin: https://www.cygwin.com/

  • ParaView: http://www.paraview.org/


Course Outline

課程內容 (Schedule and Contents)

February 11, 2019 (Mon)

09:10-10:00 Introduction

10:10-11:00 FVM code (1/3)

11:10-12:00 FVM code (2/3)

13:10-14:00 FVM code (3/3)

14:10-15:00 Using the Reedbush-U

15:10-16:00 Parallel FVM (OpenMP) (1/3)

16:10-17:00 Parallel FVM (OpenMP) (2/3)


February 12, 2019 (Tue)

09:10-10:00 Parallel FVM (OpenMP) (3/3)

10:10-11:00 Introduction to Parallel Programming

11:10-12:00 MPI Programming (1/7)

13:10-14:00 MPI Programming (2/7)

14:10-15:00 MPI Programming (3/7)

15:10-16:00 MPI Programming (4/7)

16:10-17:00 MPI Programming (5/7)


February 13, 2019 (Wed)

09:10-10:00 MPI Programming (6/7)

10:10-11:00 MPI Programming (7/7)

11:10-12:00 Parallel Data Structure (1/2)

13:10-14:00 Parallel Data Structure (2/2)

14:10-15:00 Parallel FVM (OpenMP/MPI) (1/5)

15:10-16:00 Parallel FVM (OpenMP/MPI) (2/5)

16:10-17:00 Parallel FVM (OpenMP/MPI) (3/5)


February 14, 2019 (Thu)

09:10-10:00 Parallel FVM (OpenMP/MPI) (4/5)

10:10-11:00 Parallel FVM (OpenMP/MPI) (5/5)

11:10-12:00 Advanced Topics (1/5)

13:10-14:00 Advanced Topics (2/5)

14:10-15:00 Advanced Topics (3/5)

15:10-16:00 Advanced Topics (4/5)

16:10-17:00 Advanced Topics (5/5)


You can also watch it on Youtube !

More Information...

(C) 2021 National Center for Theoretical Sciences 
Google Sites
Report abuse
Google Sites
Report abuse