Preface.- Part 1: High Performance Computing (HPC) with the Message Passing Interface (MPI).- A Glance at High Performance Computing (HPC).- Introduction to The Message Passing Interface.- Topology of Interconnection Networks.- Parallel Sorting.- Parallel Linear Algebra.-The MapReduce Paradigm.- Part 11: High Performance Computing for Data Science.- Partition-based Clustering with k means.- Hierarchical Clustering.- Supervised Practice and Theory of Classification with k NN rule.- Fast Approximate Optimization to High Dimensions with Core-sets and Fast Dimension Reduction.- Parallel Algorithms for Graphs.- Appendix Written Exam.- Appendix A resource manager and job scheduler on clusters of machines.- Appendix List of Figures.- Appendix List of Tables.- Appendix Index.