O'Reilly logo

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Build Supercomputers with Raspberry Pi 3

Book Description

A step-by-step guide that will enhance your skills in creating powerful systems to solve complex issues

About This Book

  • Carlos R. Morrison from NASA will teach you to build a supercomputer with Raspberry Pi 3
  • Deepen your understanding of setting up host nodes, configuring networks, and automating mountable drives
  • Learn various math, physics, and engineering applications to solve complex problems

Who This Book Is For

This book targets hobbyists and enthusiasts who want to explore building supercomputers with microcomputers. Researchers will also find this book useful. Prior programming knowledge is necessary; knowledge of supercomputers is not.

What You Will Learn

  • Understand the concept of the Message Passing Interface (MPI)
  • Understand node networking.
  • Configure nodes so that they can communicate with each other via the network switch
  • Build a Raspberry Pi3 supercomputer.
  • Test the supercluster
  • Use the supercomputer to calculate MPI p codes.
  • Learn various practical supercomputer applications

In Detail

Author Carlos R. Morrison (Staff Scientist, NASA) will empower the uninitiated reader to quickly assemble and operate a Pi3 supercomputer in the shortest possible time. The lifeblood of a supercomputer, the MPI code, is introduced early, and sample MPI code provides additional practice opportunities for you to test the effectiveness of your creation. You will learn how to configure various nodes and switches so that they can effectively communicate with each other. By the end of this book, you will have successfully built a supercomputer and the various applications related to it.

Style and approach

A progressive guide that will start off with serial coding and MPI concepts, moving towards configuring a complete supercluster, and solving real world problems

Downloading the example code for this book. You can download the example code files for all Packt books you have purchased from your account at http://www.PacktPub.com. If you purchased this book elsewhere, you can visit http://www.PacktPub.com/support and register to have the code file.

Table of Contents

  1. Build Supercomputers with Raspberry Pi 3
    1. Build Supercomputers with Raspberry Pi 3
    2. Credits
    3. About the Author
    4. About the Reviewer
    5. www.PacktPub.com
      1. Why subscribe?
    6. Customer Feedback
    7. Dedication
    8. Preface
      1. What this book covers
      2. What you need for this book
      3. Who this book is for
      4. Conventions
      5. Reader feedback
      6. Customer support
        1. Downloading the example code
        2. Downloading the color images of this book
        3. Errata
        4. Piracy
        5. Questions
    9. 1. Getting Started with Supercomputing
      1. Von Neumann architecture
      2. Flynn's classical taxonomy
      3. Historical perspective
        1. Serial computing technique
        2. Parallel computing technique
      4. The need for greater processing speed
      5. Additional analytical perspective
      6. Sources for reference
      7. Summary
    10. 2. One Node Supercomputing
      1. Linux installation
      2. PC processor
      3. Accessing processor technical details
      4. Write/run serial π code
      5. Message passing interface
        1. Basic MPI code
        2. MPI π code
        3. Critical MPI for loop structure
        4. MPI Euler code
        5. MPI Leibniz code
        6. MPI Nilakantha code
      6. Summary
    11. 3. Preparing the Initial Two Nodes
      1. Listing of parts
      2. The Pi2/Pi3 computer
      3. Project overview
      4. Super stack assembly
      5. Preparing the master node
      6. Transferring the code
      7. Preparing the slave node
      8. Summary
    12. 4. Static IP Address and Hosts File Setup
      1. Configuring static IP address of the master Pi
      2. Configuring a network switch static IP address
      3. Hosts file setup
      4. Summary
    13. 5. Creating a Common User for All Nodes
      1. Adding a new user for all nodes
      2. ID key generation
      3. ID key transfer
      4. Summary
    14. 6. Creating a Mountable Drive on the Master Node
      1. Summary
    15. 7. Configuring the Eight Nodes
      1. Automating mounting of drives
      2. Setting up the host file for all nodes
      3. Formatting the remaining slave SD cards
      4. Copying the slave1 SD card image to the main computer drive
      5. Copying the slave1 image to the remaining slave SD cards
      6. Summary
    16. 8. Testing the Super Cluster
      1. Wielding the -H command
      2. Pi2 supercomputing
      3. Pi3 supercomputing
      4. Creating bash files
      5. Using unrestrained MPI code logic
      6. Summary
    17. 9. Real-World Math Application
      1. MPI Taylor series sine(x) function
      2. MPI Taylor series cosine(x) function
      3. MPI Taylor series tan(x) function
      4. MPI Taylor series ln(x) function
      5. Summary
    18. 10. Real-World Physics Application
      1. MPI concurrent wave equation and code
        1. Drawing graphs
      2. Summary
    19. 11. Real-World Engineering Application
      1. MPI Fourier series sawtooth signal
      2. Summary
    20. A. Appendix
      1. Definitions