+33 1 69 08 57 72
Competences in physics:
Competences in computer science:
Born in Argentina. After obtaining a PhD in theoretical physics, he spent severl years as visitibg scientist - working in theoretical
particle physics - in different research laboratories in the USA and Europe, in particular at the CERN theory division
Appointed, in 1978, full professor at the University of Paris XI in Orsay, France. His basic interests shifted to computational sciences
in the early 90’s, and he was at this time the founding director of IDRIS supercomputing center in Orsay, which he directed until 2009.
Coordinator – in 2004-2009 - of the DEISA European supercomputing infrastructure, a consortium of national supercomputing centers
that pioneered the deployment of high performance computing services au the continental scale.
Currently, CNRS emeritus research director at “Maison de la Simulation”. Decorated in 2011 “Chevalier de l’Ordre National du Mérite”
by the French Republic.
This book is designed to introduce multithreading programming strategies for developers in applied computing. Its main purpose is to
guide readers into developing insights about threaded programming by first discussing the way in which the basic concepts of thread
management and synchronization are implemented in the native multithreading libraries (Windows threads, Pthreads in Linux) as well
as in the modern C++11 threads standard. Then, a complete discussion follows of widely used high level programming environments,
namely, OpenMP 4.0 and Intel Threading Buildng Blocks.
Several chapters include examples drawn from a variety of disciplines, including molecular dynamics and image processing, with full
source code. A software library incorporating a number of utilities that readers can adapt into their own projects is also made available.
A more complete discussion of the book content, as well as the Table of Contents, can be found in the book presentation site mentioned
The book software site contains three directories that can be downloaded independently:
docs: documentation. The vath_status.pdf file summarizes the present status of the utilities library. Library updates are reported here. New examples are reported in the examples_status.pdf file in this directory. Papers extending the book content are also stored here.
The utilities libray and the book examples are updated, as compiler evolve and new relevant features become available. New examples are also
proposed if the author develops new ways of illustrating and clarifying the subjects discussed in the book.
Mai 2016 update
A few lightweight utilities have been incorporated to the vath library. Among the new examples, the most important ones deal with the way of
synchronizing OpenMP or TBB tasks in parallel contexts in which data dependencies enforce hierarchical relations among tasks. These examples
are discussed in detail in the PipeliningTasks.pdf document in the docs directory.
A second update is in preparation for next fall, including examples of OpenMP 4.0 directives for offloading code blocks to GPUs.
The author can be contacted for comments or questions at
Training in multithreaded programming. Last event:
Maison de la Simulation, March 14-16 2016