BEGIN:VCALENDAR
VERSION:2.0
PRODID:icalendar-ruby
CALSCALE:GREGORIAN
BEGIN:VEVENT
DTSTAMP:20260703T165401Z
UID:d940e4f1-5a1f-44b0-be34-f5e16dd428c5
DTSTART:20211201T080000Z
DTEND:20211203T150000Z
DESCRIPTION:\nThis online course organised in cooperation with NHR@FAU cove
 rs performance engineering approaches on the compute node level. Even appl
 ication developers who are fluent in OpenMP and MPI often lack a good gras
 p of how much performance could at best be achieved by their code.\n\nThis
  is because parallelism takes us only half the way to good performance.\n\
 nEven worse\, slow serial code tends to scale very well\, hiding the fact 
 that resources are wasted. This course conveys the required knowledge to d
 evelop a thorough understanding of the interactions between software and h
 ardware. This process must start at the core\, socket\, and node level\, w
 here the code gets executed that does the actual computational work. We in
 troduce the basic architectural features and bottlenecks of modern process
 ors and compute nodes.\n\nPipelining\, SIMD\, superscalarity\, caches\, me
 mory interfaces\, ccNUMA\, etc.\, are covered. A cornerstone of node-level
  performance analysis is the Roofline model\, which is introduced in due d
 etail and applied to various examples from computational science. We also 
 show how simple software tools can be used to acquire knowledge about the 
 system\, run code in a reproducible way\, and validate hypotheses about re
 source consumption. Finally\, once the architectural requirements of a cod
 e are understood and correlated with performance measurements\, the potent
 ial benefit of code changes can often be predicted\, replacing hope-for-th
 e-best optimizations by a scientific process.\n\nThe course is a PRACE tra
 ining event.\n\n\n	Introduction\n\n	\n		Basic architecture of multicore sy
 stems: pipelines\, SIMD\, caches\, sockets\, memory\n		The important role 
 of system topology\n	\n	\n	Tools: topology &amp\; affinity in multicore en
 vironments\n	\n		likwid-topology and likwid-pin\, alternatives\n	\n	\n	Roo
 fline model basics         \n	\n		Model assumptions and construct
 ion\n		Simple examples\n		Limitations of the Roofline model\n	\n	\n	Tools:
  hardware performance counters\n	\n		Why hardware performance counters?\n	
 	likwid-perfctr\n		Validating performance models\n	\n	\n	Optimal use of pa
 rallel resources\n	\n		Single Instruction Multiple Data (SIMD)\n		Cache-co
 herent Non-Uniform Memory Architecture (ccNUMA)\n	\n	\n	Roofline case stud
 ies\n	\n		Tall &amp\; skinny dense matrix-matrix multiplication\n		Sparse 
 matrix-vector multiplication\n		Jacobi (stencil) smoother\n	\n	\n	Basics o
 f performance engineering\n	\n		PE process\n		Code profiling\n		Proper ben
 chmarking\n		Reproducibility and documentation\n	\n	\n	Beyond Roofline: Th
 e ECM performance model (optional)\n\n\nPrerequisites\n\nYou have to be ab
 le to handle a Linux command line and file editing remotely. Basic knowled
 ge of C\, C++\, or Fortran programming and of OpenMP is required.\n\nHands
 -On\n\nExercises will be done on a cluster at NHR@FAU. For the exercises y
 ou need an SSH client on your local computer.\n\nLanguage\n\nEnglish\n\nLe
 cturers\n\nProf. Gerhard Wellein\, Dr. habil. Georg Hager (RRZE\, Uni. Erl
 angen)\n\nPrices and Eligibility\n\nThe course is open and free of charge 
 for people from academia and industry.\n\nWithdrawal Policy\n\nSee Withdra
 wal\n\nLegal Notices\n\nThis course is offered in cooperation with NHR@FAU
 . Some of your personal data will be transferred to NHR@FAU (title\, first
  name\, surname\, institution\, country\, email\, course) to create the co
 urse accounts. The legal basis is in accordance with Article 6(1)(b) GDPR.
  Please see also our data protection notice (in German: https://www.lrz.de
 /datenschutzerklaerung/).\n\nhttps://events.prace-ri.eu/event/1249/
SUMMARY:[ONLINE] Node-Level Performance Engineering @ LRZ
URL;VALUE=URI:https://events.prace-ri.eu/event/1249/
END:VEVENT
END:VCALENDAR
