Next Section


High Performance Linux Clusters with OSCAR, Rocks, OpenMosix, and MPI

This new guide covers everything you need to plan, build, and deploy a high-performance Linux cluster. You'll learn about planning, hardware choices, bulk installation of Linux on multiple systems, and other basic considerations. Learn about the major free software projects and how to choose those that are most helpful to new cluster administrators and programmers. Guidelines for debugging, profiling, performance tuning, and managing jobs from multiple users round out this immensely useful book.


Table of Contents

   Preface
     Audience
     Organization
     Conventions
     Acknowledgments
    Part I:  An Introduction to Clusters
       Chapter 1.  Cluster Architecture
     Section 1.1.  Modern Computing and the Role of Clusters
     Section 1.2.  Types of Clusters
     Section 1.3.  Distributed Computing and Clusters
     Section 1.4.  Limitations
     Section 1.5.  My Biases
       Chapter 2.  Cluster Planning
     Section 2.1.  Design Steps
     Section 2.2.  Determining Your Cluster's Mission
     Section 2.3.  Architecture and Cluster Software
     Section 2.4.  Cluster Kits
     Section 2.5.  CD-ROM-Based Clusters
     Section 2.6.  Benchmarks
       Chapter 3.  Cluster Hardware
     Section 3.1.  Design Decisions
     Section 3.2.  Environment
       Chapter 4.  Linux for Clusters
     Section 4.1.  Installing Linux
     Section 4.2.  Configuring Services
     Section 4.3.  Cluster Security
    Part II:  Getting Started Quickly
       Chapter 5.  openMosix
     Section 5.1.  What Is openMosix?
     Section 5.2.  How openMosix Works
     Section 5.3.  Selecting an Installation Approach
     Section 5.4.  Installing a Precompiled Kernel
     Section 5.5.  Using openMosix
     Section 5.6.  Recompiling the Kernel
     Section 5.7.  Is openMosix Right for You?
       Chapter 6.  OSCAR
     Section 6.1.  Why OSCAR?
     Section 6.2.  What's in OSCAR
     Section 6.3.  Installing OSCAR
     Section 6.4.  Security and OSCAR
     Section 6.5.  Using switcher
     Section 6.6.  Using LAM/MPI with OSCAR
       Chapter 7.  Rocks
     Section 7.1.  Installing Rocks
     Section 7.2.  Managing Rocks
     Section 7.3.  Using MPICH with Rocks
    Part III:  Building Custom Clusters
       Chapter 8.  Cloning Systems
     Section 8.1.  Configuring Systems
     Section 8.2.  Automating Installations
     Section 8.3.  Notes for OSCAR and Rocks Users
       Chapter 9.  Programming Software
     Section 9.1.  Programming Languages
     Section 9.2.  Selecting a Library
     Section 9.3.  LAM/MPI
     Section 9.4.  MPICH
     Section 9.5.  Other Programming Software
     Section 9.6.  Notes for OSCAR Users
     Section 9.7.  Notes for Rocks Users
       Chapter 10.  Management Software
     Section 10.1.  C3
     Section 10.2.  Ganglia
     Section 10.3.  Notes for OSCAR and Rocks Users
       Chapter 11.  Scheduling Software
     Section 11.1.  OpenPBS
     Section 11.2.  Notes for OSCAR and Rocks Users
       Chapter 12.  Parallel Filesystems
     Section 12.1.  PVFS
     Section 12.2.  Using PVFS
     Section 12.3.  Notes for OSCAR and Rocks Users
    Part IV:  Cluster Programming
       Chapter 13.  Getting Started with MPI
     Section 13.1.  MPI
     Section 13.2.  A Simple Problem
     Section 13.3.  An MPI Solution
     Section 13.4.  I/O with MPI
     Section 13.5.  Broadcast Communications
       Chapter 14.  Additional MPI Features
     Section 14.1.  More on Point-to-Point Communication
     Section 14.2.  More on Collective Communication
     Section 14.3.  Managing Communicators
     Section 14.4.  Packaging Data
       Chapter 15.  Designing Parallel Programs
     Section 15.1.  Overview
     Section 15.2.  Problem Decomposition
     Section 15.3.  Mapping Tasks to Processors
     Section 15.4.  Other Considerations
       Chapter 16.  Debugging Parallel Programs
     Section 16.1.  Debugging and Parallel Programs
     Section 16.2.  Avoiding Problems
     Section 16.3.  Programming Tools
     Section 16.4.  Rereading Code
     Section 16.5.  Tracing with printf
     Section 16.6.  Symbolic Debuggers
     Section 16.7.  Using gdb and ddd with MPI
     Section 16.8.  Notes for OSCAR and Rocks Users
       Chapter 17.  Profiling Parallel Programs
     Section 17.1.  Why Profile?
     Section 17.2.  Writing and Optimizing Code
     Section 17.3.  Timing Complete Programs
     Section 17.4.  Timing C Code Segments
     Section 17.5.  Profilers
     Section 17.6.  MPE
     Section 17.7.  Customized MPE Logging
     Section 17.8.  Notes for OSCAR and Rocks Users
    Part V:  Appendix
       Appendix A.  References
     Section A.1.  Books
     Section A.2.  URLs
   Colophon
   Index

    Next Section