Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Section I — High Performance Computing (Topics 801–850)

Overview

This section covers the systems, programming models, and infrastructure that power scientific computing, large-scale simulations, and distributed AI training at exascale. HPC sits at the intersection of architecture, networking, systems software, and algorithms — making it a fertile area for depth-oriented interview questions at companies running large GPU clusters (Google, Meta, NVIDIA, AWS Trainium/Inferentia, Microsoft Azure).

Topic Map

graph TD
    A[HPC Section] --> B[MPI Parallelism]
    A --> C[Collective Communication & Distributed Training]
    A --> D[HPC Infrastructure]
    
    B --> B1[MPI / OpenMP / OpenACC]
    B --> B2[CUDA Advanced: Memory/Streams/Graphs]
    B --> B3[NCCL / GPUDirect / RDMA]
    B --> B4[InfiniBand / RoCE / NVLink]
    
    C --> C1[All-Reduce Algorithms]
    C --> C2[Parallelism Strategies: Tensor/Pipeline/Data/Expert]
    C --> C3[Parameter Servers vs Ring All-Reduce]
    C --> C4[Federated & Async Optimization]
    
    D --> D1[Slurm / Scheduling / Backfilling]
    D --> D2[Checkpoint/Restart & Fault Tolerance]
    D --> D3[Exascale & Energy-Aware Computing]
    D --> D4[Performance Portability: Kokkos/SYCL/oneAPI]

Reading Order

#FilePrerequisitesFocus
1mpi-parallelism.mdGPU basics, sockets, RDMA conceptsProgramming models, interconnects, GPU communication
2collective-communication.mdMPI basics, neural network trainingDistributed ML communication patterns
3hpc-infra.mdLinux scheduling, containersJob scheduling, portability, exascale

Cross-References

  • GPU fundamentals: ../arch/parallelism/gpu.md, ../arch/parallelism/cuda.md, ../arch/parallelism/gpu-hpc.md
  • SIMD/vectorization: ../arch/parallelism/simd.md, ../arch/parallelism/avx.md, ../arch/parallelism/neon.md
  • Multicore/SMT: ../arch/parallelism/multicore.md, ../arch/parallelism/smt.md
  • Networking fundamentals: ../networks/overview.md, ../networks/sockets/tcp.md
  • Advanced networking: ../networks/advanced/programmable-networks.md, ../networks/advanced/datacenter-topology.md
  • Linux kernel: ../os/advanced/fast-io.md (RDMA/DPDK), ../os/kernel-advanced/block-layer.md (NVMe)

HPC vs. Cloud: Key Distinctions

DimensionHPCGeneral Cloud
WorkloadTightly-coupled MPI jobs, batch simulationsLoosely-coupled microservices
NetworkInfiniBand/RoCE, RDMA, sub-μs latencyEthernet, TCP/IP, ~100μs latency
SchedulingGang scheduling, rigid node allocationsBin-packing, overcommit, spot instances
StorageParallel filesystems (Lustre, GPFS)Object stores (S3), distributed FS (Ceph)
Fault modelCheckpoint/restart, ULFMSelf-healing, replication, retry
ProgrammingMPI, OpenMP, CUDA, FortranContainers, serverless, managed services
TargetFLOPS, time-to-solutionAvailability, cost-efficiency, elasticity