Treffer: Parallel programming for physicists

Title:
Parallel programming for physicists
Contributors:
Institut de Physique Théorique - UMR CNRS 3681 (IPHT), Université Paris-Saclay-Centre National de la Recherche Scientifique (CNRS)-Direction de Recherche Fondamentale (CEA) (DRF (CEA)), Commissariat à l'énergie atomique et aux énergies alternatives (CEA)-Commissariat à l'énergie atomique et aux énergies alternatives (CEA), Institut de Physique Théorique, CEA Saclay
Source:
3rd cycle. Institut de Physique Théorique. :163-163
Publisher Information:
HAL CCSD, 2019.
Publication Year:
2019
Collection:
collection:CEA
collection:CNRS
collection:DSM-IPHT
collection:DSV
collection:CEA-UPSAY
collection:UNIV-PARIS-SACLAY
collection:CEA-UPSAY-SACLAY
collection:CEA-DRF
collection:GS-MATHEMATIQUES
collection:GS-PHYSIQUE
Original Identifier:
HAL: hal-04452753
Document Type:
Buch lecture<br />Lectures
Language:
English
Rights:
info:eu-repo/semantics/OpenAccess
URL: http://creativecommons.org/licenses/by-nc-sa/
Accession Number:
edshal.hal.04452753v1
Database:
HAL

Weitere Informationen

3rd cycle
Modern computers have a growing number of processors or ’cores’. From a few units in a simple laptop, to several thousands in big servers, their number has been growing quickly over the years. But to fully take advantage of this computing power, it is necessary to have codes or softwares being able to distribute a given task over several processors working in parallel.These lectures will present an introduction to parallel programming in the context of scientific calculations;- Introduction to hardware aspects (’shared’ versus ’distributed’ memory, communication between processors, vectorization, etc.)- Solutions based on ’already-parallel’ softwares (from linear algebra libraries to highlevel computer algebra softwares)- We will then present two widely used libraries for code parallelization, OpenMP (Open MultiProcessing) and MPI (Message Passing Interface).These lectures will be based on simple and concrete examples. They are intended for people with some basic programming knowledge (for instance in C/C++, Python or Fortran), but no prior experience with parallelization.