Going Parallel (part II)
Wednesday, 7 December 2022 -
09:00
Monday, 5 December 2022
Tuesday, 6 December 2022
Wednesday, 7 December 2022
09:00
Parallel programming with OpenMP
-
Orian Louant
(
Université de Liège
)
David Colignon
(
ULiège
)
Parallel programming with OpenMP
Orian Louant
(
Université de Liège
)
David Colignon
(
ULiège
)
09:00 - 12:00
Room: Banque nationale: BN/055
<table border="0" cellpadding="10px"> <tbody> <tr> <td colspan="2"> <p>OpenMP is an easy alternative to pthreads for multithread computing. OpenMP extensions now exist in most C and Fortran compilers and allow flagging loops and other construct for efficient multithreading with little supplementary programming effort. </p> </td> </tr> <tr> <td rowspan="2"> <p><strong>Contents:</strong></p> <ul> <li>Parallel programming paradigms</li> <li>OpenMP Execution model</li> <li>Compiling an OpenMP program</li> <li>Data races</li> <li>Parallel loops</li> <li>Barriers and synchronisation</li> </ul> </td> <td> <p><strong>Prerequisite:</strong></p> <ul> <li>Being able to use SSH with private keys </li> <li>Being familiar with a text editor </li> <li>Mastering the Linux command line and the GNU utilities (mkdir, cp, scp, etc.)</li> <li>Passive knowledge of C or Fortran</li> </ul> </td> </tr> <tr> <td> <p><br /> <strong>Type</strong>: Hands-on<br /> <strong>Target audience</strong>: Rookie programmer<br /> <strong>Must: </strong>This session is a must-have for anyone writing programs in C/C++ or Fortran</p> </td> </tr> </tbody> </table>
13:30
Parallel programming on GPU with CUDA
-
Olivier Mattelaer
(
UCLouvain/CISM
)
Parallel programming on GPU with CUDA
Olivier Mattelaer
(
UCLouvain/CISM
)
13:30 - 15:15
Room: Banque nationale: BN/055
<p>Cuda is the most common way to code GPU application from scratch develloped by NVidia, it allows to push NVidia GPU to the maximum of their possibilities</p> <table border="0" cellpadding="10px"> <tbody> <tr> <td rowspan="2"> <p><strong>Contents:</strong></p> <ul> <li>Basic of GPU hardware</li> <li>Basic of programming with CUDA</li> <li>using nsight to profile your code</li> </ul> <p> </p> </td> <td> <p><strong>Prerequisite:</strong></p> <ul> <li>Being able to use SSH with private keys </li> <li>Being familiar with a text editor </li> <li>Mastering the Linux command line and the GNU utilities (mkdir, cp, scp, etc.)</li> <li>Basic knowledge of C</li> </ul> <p><strong>Type:</strong> Hands-on<br /> <strong>Target audience</strong>: Rookie programmer<br /> <strong>Must: </strong>This session is a nice-to-have for those who need to develop highly parallel scientific software.</p> </td> </tr> </tbody> </table>
15:30
Directive Based Parallel programming on GPU (OpenACC)
-
Orian Louant
(
Université de Liège
)
Directive Based Parallel programming on GPU (OpenACC)
Orian Louant
(
Université de Liège
)
15:30 - 17:00
Room: Banque nationale: BN/055
<p>This course is an introduction to OpenACC and OpenMP to target GPU. These programming models are based on programmers inserting hints into their C/C++ or Fortran programs on how the code can be parallelized. OpenMP, was initially designed for shared-memory system with CPU but has recently been extended to target heterogeneous systems with accelerators like GPU. OpenACC, on the other end, was designed from the start to target accelerators.</p> <table border="0" cellpadding="10px"> <tbody> <tr> <td rowspan="2"> <p><strong>Contents:</strong></p> <ul> <li>Basics of OpenMP offloading and OpenACC</li> <li>Compute and worksharing constructs</li> <li>Data management</li> <li>Asynchronous execution and synchronization</li> </ul> <p> </p> </td> <td> <p><strong>Prerequisite:</strong></p> <ul> <li>Being able to use SSH with private keys </li> <li>Being familiar with a text editor </li> <li>Mastering the Linux command line and the GNU utilities (mkdir, cp, scp, etc.)</li> <li>Basic knowledge of C/C++ or Fortran</li> </ul> <p><strong>Type:</strong> Hands-on<br /> <strong>Target audience</strong>: Rookie programmer<br /> <strong>Must: </strong>This session is a nice-to-have for those who need to develop highly scientific software.</p> </td> </tr> </tbody> </table>