© 2016

Introduction to HPC with MPI for Data Science


Part of the Undergraduate Topics in Computer Science book series (UTICS)

Table of contents

  1. Front Matter
    Pages i-xxxiii
  2. High Performance Computing (HPC) with the Message Passing Interface (MPI)

    1. Front Matter
      Pages 1-1
    2. Frank Nielsen
      Pages 63-97
    3. Frank Nielsen
      Pages 99-120
    4. Frank Nielsen
      Pages 121-145
    5. Frank Nielsen
      Pages 147-160
  3. High Performance Computing (HPC) for Data Science (DS)

  4. Back Matter
    Pages 261-282

About this book


This gentle introduction to High Performance Computing (HPC) for Data Science using the Message Passing Interface (MPI) standard has been designed as a first course for undergraduates on parallel programming on distributed memory models, and requires only basic programming notions.

Divided into two parts the first part covers high performance computing using C++ with the Message Passing Interface (MPI) standard followed by a second part providing high-performance data analytics on computer clusters.

In the first part, the fundamental notions of blocking versus non-blocking point-to-point communications, global communications (like broadcast or scatter) and collaborative computations (reduce), with Amdalh and Gustafson speed-up laws are described before addressing parallel sorting and parallel linear algebra on computer clusters. The common ring, torus and hypercube topologies of clusters are then explained and global communication procedures on these topologies are studied. This first part closes with the MapReduce (MR) model of computation well-suited to processing big data using the MPI framework.

In the second part, the book focuses on high-performance data analytics. Flat and hierarchical clustering algorithms are introduced for data exploration along with how to program these algorithms on computer clusters, followed by machine learning classification, and an introduction to graph analytics. This part closes with a concise introduction to data core-sets that let big data problems be amenable to tiny data problems.

Exercises are included at the end of each chapter in order for students to practice the concepts learned, and a final section contains an overall exam which allows them to evaluate how well they have assimilated the material covered in the book.


Data Science Exploratory analytics and knowledge discovery High Performance Computing (HPC) Large-scale data sets and networks Machine learning

Authors and affiliations

  1. 1.Bâtiment Alan Turing, CS35003École PolytechniquePalaiseauFrance

About the authors

Frank Nielsen is a Professor at École Polytechnique in France where he teaches graduate (vision/graphics) and undergraduate (Java/algorithms),and a senior researcher at Sony Computer Science Laboratories Inc. His research includes Computational information geometry for imaging and learning and he is the author of 3 textbooks and 3 edited books. He is also on the Editorial Board for the Springer Journal of Mathematical Imaging and Vision.

Bibliographic information

  • Book Title Introduction to HPC with MPI for Data Science
  • Authors Frank Nielsen
  • Series Title Undergraduate Topics in Computer Science
  • Series Abbreviated Title Undergraduate Topics Computer Sci.
  • DOI
  • Copyright Information Springer International Publishing Switzerland 2016
  • Publisher Name Springer, Cham
  • eBook Packages Computer Science Computer Science (R0)
  • Softcover ISBN 978-3-319-21902-8
  • eBook ISBN 978-3-319-21903-5
  • Series ISSN 1863-7310
  • Series E-ISSN 2197-1781
  • Edition Number 1
  • Number of Pages XXXIII, 282
  • Number of Illustrations 0 b/w illustrations, 101 illustrations in colour
  • Topics Programming Techniques
  • Buy this book on publisher's site
Industry Sectors
IT & Software
Finance, Business & Banking
Energy, Utilities & Environment