Communication

Communication-Aware Distributed ML

Communication-Aware Distributed ML #

Distributed machine learning is effective only when saved computation exceeds the cost of moving data and synchronising workers. Algorithm design must therefore account for message size, message frequency, barriers, and parameter placement.

Course coverage:

  1. Communication overhead, illustrated through distributed k-means
  2. Model parallelism when parameters do not fit or compute must be divided
  3. Distributed k-nearest neighbours: partitioning, indexing, and approximate search
  4. Gradient descent, SGD, and mini-batch optimisation
  5. Synchronous versus asynchronous updates

Learning Objectives #

By the end of this page, you should be able to:

ML Platforms and Frameworks

ML Platforms and Frameworks #

Training at scale requires more than dividing data between GPUs. A platform must decide where model state lives, who computes gradients, how updates are combined, and how information moves between devices.

This page focuses on the Parameter Server model and the practical constraints that determine whether adding resources makes training faster.

Topics covered:

  • Parameter servers, workers, and independent scaling of storage and computation
  • Training-state memory and parameter sharding
  • Distributed loss, gradient aggregation, and the pull–compute–push cycle
  • Communication costs, RDMA, MPI, PCIe, and NVLink
  • Global batch size, learning-rate scaling, and warm-up
  • Monitoring, fault recovery, and sparse versus dense workloads

Learning Objectives #

By the end of this page, you should be able to: