{"id":4230,"date":"2021-05-15T19:16:24","date_gmt":"2021-05-15T17:16:24","guid":{"rendered":"https:\/\/blog.rwth-aachen.de\/itc-events\/?post_type=tribe_events&#038;p=4230"},"modified":"2021-05-15T19:16:24","modified_gmt":"2021-05-15T17:16:24","slug":"ppces-2018","status":"publish","type":"tribe_events","link":"https:\/\/blog.rwth-aachen.de\/itc-events\/event\/ppces-2018\/","title":{"rendered":"PPCES 2018"},"content":{"rendered":"<div id=\"main-content\" class=\"wiki-content group\">\n<h3 id=\"PPCES2018-ParallelProgramminginComputationalEngineeringandScience2018\"><strong>Parallel Programming in Computational Engineering and Science 2018<\/strong><\/h3>\n<div class=\"table-wrap\">\n<table class=\"confluenceTable\">\n<tbody>\n<tr>\n<th class=\"confluenceTh\"><img decoding=\"async\" class=\"confluence-embedded-image confluence-thumbnail confluence-external-resource\" src=\"https:\/\/blog.rwth-aachen.de\/hpc_import_20210107\/attachments\/thumbnails\/20056127\/22904915\" width=\"200\" data-image-src=\"https:\/\/doc.itc.rwth-aachen.de\/download\/thumbnails\/20056127\/ppces_aices-style.png?version=1&amp;modificationDate=1457611487000&amp;api=v2\" \/><\/p>\n<h6 id=\"PPCES2018-kindlysponsoredby\"><strong><em>kindly sponsored by<\/em><\/strong><\/h6>\n<p><img decoding=\"async\" class=\"confluence-embedded-image confluence-thumbnail\" src=\"https:\/\/blog.rwth-aachen.de\/hpc_import_20210107\/attachments\/35947076\/36143204.png\" width=\"300\" data-image-src=\"https:\/\/blog.rwth-aachen.de\/hpc_import_20210107\/attachments\/35947076\/36143204.png\" \/><\/th>\n<th class=\"confluenceTh\"><strong>\u00a0<\/strong><\/p>\n<h2 id=\"PPCES2018-HPCSeminarandWorkshop\"><strong>HPC Seminar and Workshop<\/strong><\/h2>\n<h3 id=\"PPCES2018-March,12-16,2018\">March, 12 &#8211; 16,\u00a0 2018<\/h3>\n<h3 id=\"PPCES2018-ITCenterRWTHAachenUniversity\">IT\u00a0 Center RWTH Aachen University<\/h3>\n<h3 id=\"PPCES2018-Kopernikusstra\u00dfe6\">Kopernikusstra\u00dfe 6<\/h3>\n<h4 id=\"PPCES2018-SeminarRoom3+4\">Seminar Room 3 + 4<\/h4>\n<\/th>\n<th class=\"confluenceTh\">\n<h6 id=\"PPCES2018-\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 <img decoding=\"async\" class=\"confluence-embedded-image confluence-thumbnail confluence-external-resource image-right\" src=\"https:\/\/blog.rwth-aachen.de\/hpc_import_20210107\/attachments\/thumbnails\/3474896\/3703583\" width=\"300\" data-image-src=\"https:\/\/doc.itc.rwth-aachen.de\/download\/thumbnails\/3474896\/_DSC0005_web_600.jpg?version=1&amp;modificationDate=1389180848000&amp;api=v2\" \/><\/h6>\n<h6 id=\"PPCES2018-.1\"><span class=\"external-link\">\u00a0<\/span><\/h6>\n<h6 id=\"PPCES2018-.2\"><span class=\"external-link\">\u00a0<\/span><\/h6>\n<h6 id=\"PPCES2018-.3\"><span class=\"external-link\">\u00a0<\/span><\/h6>\n<h6 id=\"PPCES2018-.4\"><span class=\"external-link\">\u00a0<\/span><\/h6>\n<h6 id=\"PPCES2018-.5\"><span class=\"external-link\">\u00a0<\/span><\/h6>\n<p><span class=\"external-link\">\u00a0<\/span><span class=\"external-link\">Following <a href=\"PPCES-2019_44007431.html\">PPCES 2019 event here &gt;&gt;&gt;<\/a><\/span><\/th>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<h5 id=\"PPCES2018-AboutPPCES\">About PPCES<\/h5>\n<p>This event continued the tradition of previous annual week-long events that take place in Aachen every spring since 2001.<\/p>\n<p>Throughout the week we covered parallel programming using OpenMP and MPI in Fortran and C\/C++ and performance tuning. Furthermore, we introduced the participants to GPGPU programming with OpenACC. Hands-on exercises for each topic were provided, which did not discouraged the participants from working on their own code.<\/p>\n<p>The topics were presented in a modular way, so that the participants could pick specific ones and register for the particular days only in order to let them invest their time as efficiently as possible.<\/p>\n<p>Guest lectures by Ruud <strong>van der Pas<\/strong> (Oracle), Jan <strong>Eitzinger<\/strong> (RRZE) and Thomas<strong> R\u00f6hl<\/strong> (RRZE), completed the program.<\/p>\n<h5 id=\"PPCES2018-AgendaandCourseMaterials\">Agenda and Course Materials<\/h5>\n<div class=\"expand-container\">\n<div class=\"expand-content expand-hidden\">\n<ul>\n<li><a href=\"https:\/\/blog.rwth-aachen.de\/hpc_import_20210107\/attachments\/35947076\/38699019.pdf\">Agenda [v9, UPD 2018.03.06]<\/a><\/li>\n<li><a href=\"https:\/\/blog.rwth-aachen.de\/hpc_import_20210107\/attachments\/35947076\/38699050.pdf\">Login to Lab Machines<\/a><\/li>\n<\/ul>\n<\/div>\n<\/div>\n<p>Message Passing with MPI &#8211; Day I<\/p>\n<ul>\n<li><a href=\"https:\/\/blog.rwth-aachen.de\/hpc_import_20210107\/attachments\/35947076\/38699044.pdf\">01_PPCES2018_MPI_Tutorial.pdf<\/a><\/li>\n<li><a href=\"https:\/\/blog.rwth-aachen.de\/hpc_import_20210107\/attachments\/35947076\/38699046.pdf\">PPCES2018_MPI_Lab.pdf<\/a>, source code:\u00a0<a href=\"https:\/\/blog.rwth-aachen.de\/hpc_import_20210107\/attachments\/35947076\/38699047.bz2\">PPCES2018_MPI_Lab.tar.bz2<\/a><\/li>\n<\/ul>\n<p>Message Passing with MPI &#8211; Day II<\/p>\n<ul>\n<li><a href=\"https:\/\/blog.rwth-aachen.de\/hpc_import_20210107\/attachments\/35947076\/38699045.pdf\">02_PPCES2018_MPI_Tutorial.pdf<\/a><\/li>\n<li><a href=\"https:\/\/blog.rwth-aachen.de\/hpc_import_20210107\/attachments\/35947076\/38699048.pdf\">03_PPCES2018_MPI_Tutorial.pdf<\/a><\/li>\n<li><a href=\"https:\/\/blog.rwth-aachen.de\/hpc_import_20210107\/attachments\/35947076\/38699049.pdf\">PPCES2018_Correctness_Tools.pdf<\/a><\/li>\n<li><a href=\"https:\/\/blog.rwth-aachen.de\/hpc_import_20210107\/attachments\/35947076\/38699052.pdf\">Performance_101_Score-P_Scalasca.pdf<\/a><\/li>\n<li><a href=\"https:\/\/blog.rwth-aachen.de\/hpc_import_20210107\/attachments\/35947076\/38699053.pdf\">PPCES2018_MPI_Vampir.pdf<\/a><\/li>\n<li><a class=\"external-link\" href=\"http:\/\/www.vi-hps.org\/training\/tws\/tw25.html\" rel=\"nofollow\">More details on performance tools at the website of the last VI-HPS workshop in Aachen<\/a><\/li>\n<li><a href=\"https:\/\/blog.rwth-aachen.de\/hpc_import_20210107\/attachments\/35947076\/38699054.pdf\">BTMZ_CLAIX.pdf<\/a><\/li>\n<\/ul>\n<p>Shared Memory Programming with OpenMP \u2013 Day I<\/p>\n<ul>\n<li><a href=\"https:\/\/blog.rwth-aachen.de\/hpc_import_20210107\/attachments\/35947076\/38699055.pdf\">OpenMP Threading Tools<\/a><\/li>\n<li><a href=\"https:\/\/blog.rwth-aachen.de\/hpc_import_20210107\/attachments\/35947076\/36143199.pdf\">01_IntroductionToOpenMP.pdf<\/a><\/li>\n<li><a href=\"https:\/\/blog.rwth-aachen.de\/hpc_import_20210107\/attachments\/35947076\/36143198.pdf\">02_OpenMPTaskingInDepth.pdf<\/a><\/li>\n<li><a href=\"https:\/\/blog.rwth-aachen.de\/hpc_import_20210107\/attachments\/35947076\/36143197.pdf\">03_OpenMPNumaSimd.pdf<\/a><\/li>\n<li><a href=\"https:\/\/blog.rwth-aachen.de\/hpc_import_20210107\/attachments\/35947076\/36143196.pdf\">04_OpenMPSummary.pdf<\/a><\/li>\n<li>Lab:\n<ul>\n<li><a href=\"https:\/\/blog.rwth-aachen.de\/hpc_import_20210107\/attachments\/35947076\/36143202.pdf\">Exercises_OMP.pdf<\/a><\/li>\n<li><a href=\"https:\/\/blog.rwth-aachen.de\/hpc_import_20210107\/attachments\/35947076\/38699061.tar\">ppces2018_openmpex_cpp.tar<\/a><\/li>\n<li><a href=\"https:\/\/blog.rwth-aachen.de\/hpc_import_20210107\/attachments\/35947076\/38699062.tar\">ppces2018_openmpex_fortran.tar<\/a><\/li>\n<\/ul>\n<\/li>\n<li><a href=\"https:\/\/blog.rwth-aachen.de\/hpc_import_20210107\/attachments\/35947076\/38699063.pdf\">Getting OpenMP up to\u00a0 Speed<\/a><\/li>\n<li><a href=\"https:\/\/blog.rwth-aachen.de\/hpc_import_20210107\/attachments\/35947076\/39419948.pdf\">POP-wokflow.pdf<\/a><span class=\"confluence-link\">\u00a0<\/span><\/li>\n<li><span class=\"confluence-link\"><a href=\"https:\/\/blog.rwth-aachen.de\/hpc_import_20210107\/attachments\/35947076\/59310106.pdf\">ProPE: Node Level Performance Engineering and Performance Patterns<\/a><br \/>\n<\/span><\/li>\n<li><a href=\"https:\/\/blog.rwth-aachen.de\/hpc_import_20210107\/attachments\/35947076\/38699080.pdf\">Performance Analysis with LIKWID<\/a><\/li>\n<\/ul>\n<p>GPGPU Programming with OpenACC<\/p>\n<ul>\n<li><a href=\"https:\/\/blog.rwth-aachen.de\/hpc_import_20210107\/attachments\/35947076\/38699065.pdf\">PPCES2018_OpenACC.pdf<\/a><\/li>\n<li><a href=\"https:\/\/blog.rwth-aachen.de\/hpc_import_20210107\/attachments\/35947076\/38699068.pdf\">PPCES2018_OpenACC_ProgrammingLab.pdf<\/a><\/li>\n<li><a href=\"https:\/\/blog.rwth-aachen.de\/hpc_import_20210107\/attachments\/35947076\/38699069.gz\">PPCES2018_OpenACC-Lab.tar.gz<\/a><\/li>\n<\/ul>\n<h5 id=\"PPCES2018-Participants\">Participants<\/h5>\n<p>Attendees should be comfortable with C\/C++ or Fortran programming and interested in learning more about the technical details of application tuning and parallelization. The presentations will be given in <strong>English<\/strong>.<\/p>\n<h5 id=\"PPCES2018-Registration-closed\">Registration &#8211; closed<\/h5>\n<p><strong>I. + II. The Message Passing Interface (MPI)<\/strong> is the de-facto standard for programming large HPC systems. We will introduce the basic concepts and give an overview of some advanced features. Also covered is hybrid parallelization, i.e. the combination of MPI and shared memory programming, which is gaining popularity as the number of cores per cluster node grows. Furthermore, we will introduce a selection of performance and correctness-checking tools (Score-P, Vampir, MUST)<\/p>\n<p><strong>III. + IV. OpenMP <\/strong>is a widely used approach for programming shared memory architectures, supported by most compilers nowadays. We will cover the basics of the programming paradigm as well as some advanced topics such as programming NUMA machines. We will also cover a selection of performance and verification tools for OpenMP. The RWTH Compute Cluster contains a number of big SMP machines (up to 144 cores and 2 TB of main memory) as we consider shared memory programming a vital alternative for applications that cannot be easily parallelized with MPI. We also expect a growing number of application codes to combine MPI and OpenMP for clusters of nodes with a growing number of cores.<\/p>\n<p><strong>V. OpenACC<\/strong> is a directive-based programming model for accelerators, which enables delegating the responsibility for low-level (e.g. CUDA or OpenCL) programming tasks to the compiler. Using the OpenACC industry standard, the programmer can offload compute-intensive loops to an attached accelerator with little effort. We will give an overview on OpenACC while focusing on NVIDIA GPUs. We will cover topics such as the GPU architecture, offloading loops, managing data movement between hosts and devices, using managed memory, tuning data movement, hiding latencies, and writing heterogeneous applications (CPU + GPU). Finally, we will also compare OpenACC to OpenMP device constructs. Hands-on sessions are done on RWTH&#8217;s CLAIX Cluster with NVIDIA Pascal GPUs using PGI\u2018s OpenACC implementation.<\/p>\n<h5 id=\"PPCES2018-TravelInformation\"><strong>Travel Information <\/strong><\/h5>\n<p>Please make your own hotel reservation. You may find a list of hotels in Aachen on the web pages of <a class=\"external-link\" href=\"https:\/\/www.aachen-tourismus.de\/\" rel=\"nofollow\"><u>Aachen Tourist Service<\/u><\/a>.\u00a0 We recommend that you try to book a room at the <a class=\"external-link\" href=\"http:\/\/www.novotel.com\/novotel\/fichehotel\/gb\/nov\/3557\/fiche_hotel.shtml\" rel=\"nofollow\"><u>Novotel Aachen City<\/u><\/a>, <a class=\"external-link\" href=\"http:\/\/www.mercure.com\/mercure\/fichehotel\/gb\/mer\/5326\/fiche_hotel.shtml\" rel=\"nofollow\"><u>Mercure am Graben<\/u><\/a> or <a class=\"external-link\" href=\"http:\/\/www.regence.bestwestern.de\/\" rel=\"nofollow\"><u>Aachen Best Western Regence<\/u><\/a> hotels. These are nice hotels with reasonable prices within walking distance (20-30 minutes, see <a href=\"https:\/\/blog.rwth-aachen.de\/hpc_import_20210107\/attachments\/8750062\/8979116.pdf\">city map<\/a>) from the <strong>IT Center<\/strong> through the old city of Aachen. An alternative is the <a class=\"external-link\" href=\"http:\/\/www.ibishotel.com\/ibis\/fichehotel\/gb\/ibi\/0967\/fiche_hotel.shtml\" rel=\"nofollow\"><u>IBIS Aachen Marschiertor<\/u><\/a> hotel, located close to the main station, which is convenient if you are traveling by train and also prefer to commute to the IT Center by train (4 trains per hour, 2 stops).<\/p>\n<div>Please, download a <a href=\"https:\/\/blog.rwth-aachen.de\/hpc_import_20210107\/attachments\/8750062\/8979116.pdf\">sketch of the city (pdf, 415 KB)<\/a> with some points of interest marked.<\/div>\n<div>You may find a description of how to reach us by plane, train or car <a class=\"external-link\" href=\"http:\/\/www.itc.rwth-aachen.de\/go\/id\/eugd\" rel=\"nofollow\"><u>here<\/u><\/a>.<\/div>\n<div><a class=\"external-link\" href=\"http:\/\/www.avv.de\/en\/\" rel=\"nofollow\"><u>Bus lines<\/u><\/a> 33 and 73 connect the city (central bus station) and the <em>Mies-van-der-Rohe-Stra\u00dfe<\/em> bus stop 6 times per hour.<br \/>\nMost trains between Aachen and D\u00fcsseldorf stop at station <em>Aachen West<\/em>, which is 10 minutes walk away from the IT Center.<br \/>\nFrom the bus stop and the train station just walk up <em>Seffenter Weg<\/em>. The first building on the left side at the junction with <em>Kopernikusstra\u00dfe<\/em> is the IT Center of RWTH Aachen University. The event will take place in the extension building located at <em>Kopernikusstra\u00dfe 6<\/em>.<\/div>\n<div>The weather in <a class=\"external-link\" href=\"http:\/\/www.weatheronline.co.uk\/Germany\/Aachen.htm\" rel=\"nofollow\"><u>Aachen<\/u><\/a> is usually unpredictable. It is always a good idea to carry an umbrella. If you&#8217;ll bring one, it might be sunny.<\/div>\n<div>\n<div>\n<div>\n<div>\n<div>\n<div>\n<div>\n<div>\n<div>\n<h5 id=\"PPCES2018-.6\"><a rel=\"nofollow\" name=\"contact\"><\/a><\/h5>\n<h5 id=\"PPCES2018-Contact\">Contact<\/h5>\n<p>Paul Kapinos<br \/>\nTel.: +49 (241) 80-24915<br \/>\nFax\/UMS: +49 (241) 80-624915<br \/>\nE-mail: <a class=\"external-link\" href=\"mailto:hpcevent@rz.rwth-aachen.de\" rel=\"nofollow\"><u> hpcevent<\/u><\/a><a class=\"external-link\" href=\"mailto:hpcevent@itc.rwth-aachen.de\" rel=\"nofollow\"><u>@itc.rwth-aachen.de<\/u><\/a><\/p>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Parallel Programming in Computational Engineering and Science 2018 kindly sponsored by \u00a0 HPC Seminar and Workshop March, 12 &#8211; 16,\u00a0 2018 IT\u00a0 Center RWTH Aachen University Kopernikusstra\u00dfe 6 Seminar Room [&hellip;]<\/p>\n","protected":false},"author":2856,"featured_media":0,"template":"","meta":{"_price":"","_stock":"","_tribe_ticket_header":"","_tribe_default_ticket_provider":"","_ticket_start_date":"","_ticket_end_date":"","_tribe_ticket_show_description":"","_tribe_ticket_show_not_going":false,"_tribe_ticket_use_global_stock":"","_tribe_ticket_global_stock_level":"","_global_stock_mode":"","_global_stock_cap":"","_tribe_rsvp_for_event":"","_tribe_ticket_going_count":"","_tribe_ticket_not_going_count":"","_tribe_tickets_list":"[]","_tribe_ticket_has_attendee_info_fields":false,"_tribe_events_status":"","_tribe_events_status_reason":"","footnotes":"","_tec_slr_enabled":"","_tec_slr_layout":""},"tags":[],"tribe_events_cat":[22,55],"class_list":["post-4230","tribe_events","type-tribe_events","status-publish","hentry","tribe_events_cat-hpcevents","tribe_events_cat-ppces","cat_hpcevents","cat_ppces"],"ticketed":false,"_links":{"self":[{"href":"https:\/\/blog.rwth-aachen.de\/itc-events\/wp-json\/wp\/v2\/tribe_events\/4230","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.rwth-aachen.de\/itc-events\/wp-json\/wp\/v2\/tribe_events"}],"about":[{"href":"https:\/\/blog.rwth-aachen.de\/itc-events\/wp-json\/wp\/v2\/types\/tribe_events"}],"author":[{"embeddable":true,"href":"https:\/\/blog.rwth-aachen.de\/itc-events\/wp-json\/wp\/v2\/users\/2856"}],"version-history":[{"count":1,"href":"https:\/\/blog.rwth-aachen.de\/itc-events\/wp-json\/wp\/v2\/tribe_events\/4230\/revisions"}],"predecessor-version":[{"id":4232,"href":"https:\/\/blog.rwth-aachen.de\/itc-events\/wp-json\/wp\/v2\/tribe_events\/4230\/revisions\/4232"}],"wp:attachment":[{"href":"https:\/\/blog.rwth-aachen.de\/itc-events\/wp-json\/wp\/v2\/media?parent=4230"}],"wp:term":[{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.rwth-aachen.de\/itc-events\/wp-json\/wp\/v2\/tags?post=4230"},{"taxonomy":"tribe_events_cat","embeddable":true,"href":"https:\/\/blog.rwth-aachen.de\/itc-events\/wp-json\/wp\/v2\/tribe_events_cat?post=4230"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}