BEGIN:VCALENDAR
VERSION:2.0
PRODID:icalendar-ruby
CALSCALE:GREGORIAN
BEGIN:VEVENT
DTSTAMP:20260708T035722Z
UID:11289902-d400-457e-8421-3770ee0aded4
DTSTART:20190401T073000Z
DTEND:20190402T150000Z
DESCRIPTION:When developing a numerical simulation code with high performan
 ce and efficiency in mind\, one is often compelled to accept a trade-off 
 between using a native-hardware programming model (like CUDA or OpenCL)\, 
 which has become tremendously challenging\, and loosing some cross-platfor
 m portability.\n\nPorting a large existing legacy code to a modern HPC pla
 tform\, and developing a new simulation code\, are two different tasks tha
 t may be benefit from a high-level programming model\, which abstracts th
 e low-level hardware details.\n\nThis training presents existing high-lev
 el programming solutions that can preserve at best as possible performance
 \, maintainability and portability across the vast diversity of modern har
 dware architectures (multicore CPU\, manycore\, GPU\, ARM\, ..) and softwa
 re development productivity.\n\nWe will  provide an introduction to the h
 igh-level C++ programming model Kokkos https://github.com/kokkos\, and sh
 ow basic code examples  to illustrate the following concepts through hand
 s-on sessions:\n\n\n    hardware portability: design an algorithm once and
  let the Kokkos back-end (OpenMP\, CUDA\, ...) actually derive an efficie
 nt low-level implementation\;\n    efficient architecture-aware memory con
 tainers: what is a Kokkos::view\;\n    revisit fundamental parallel patter
 ns with Kokkos: parallel for\, reduce\, scan\, ... \;\n    explore some mi
 ni-applications.\n\n\nSeveral detailed examples in C/C++/Fortran will be u
 sed in hands-on session on the high-end hardware platform Ouessant (http:
 //www.idris.fr/ouessant/)\, equipped with Nvidia Pascal GPUs.\n\nPrerequis
 ites:\nSome basic knowledge of the CUDA programming model and of C++.\nhtt
 ps://events.prace-ri.eu/event/818/
SUMMARY:Performance portability for GPU application using high-level progra
 mming approaches @ MdlS /Idris
URL;VALUE=URI:https://events.prace-ri.eu/event/818/
END:VEVENT
END:VCALENDAR
