Model Training Infrastructure and Distributed Training Questions

Scaling model training across hardware and time. Covers GPU/accelerator considerations, data and model parallelism, distributed and large-scale training, experiment tracking and training infrastructure, and the training-versus-inference compute tradeoff. Focuses on the systems and resource decisions that make large-model training feasible.

MediumTechnical
99 practiced

Compare PyTorch DistributedDataParallel (DDP), Horovod, and DeepSpeed for distributed training. For each, explain typical use cases, integration complexity, memory and communication trade-offs, and support for model parallelism or optimization techniques like ZeRO.

EasyTechnical
153 practiced

Explain the differences between NVLink (and NVSwitch) and PCIe for GPU-to-GPU communication. Discuss topology, raw bandwidth, latency, and why NVLink/NVSwitch can improve multi-GPU scalability for synchronous training. Give an example of a situation where PCIe becomes the bottleneck and how NVLink changes your parallelism choices.

HardTechnical
126 practiced

You're planning on-prem GPU procurement for large-scale training. Draft a plan covering GPU model selection, rack and rack-power sizing (kW per rack), cooling requirements, UPS, networking (RDMA, 100GbE), procurement timelines, vendor support, capacity planning for target utilization, and how these physical choices affect training throughput, single-job latency, and total cost of ownership.

HardTechnical
80 practiced

You need to implement a custom fused transformer-attention kernel to leverage Tensor Cores for better throughput. Explain design choices and implementation steps either using CUDA WMMA APIs or Triton: data layout, tile sizes, alignment constraints, memory staging (shared memory), avoiding bank conflicts, and validation for numerical correctness and performance regression testing.

MediumTechnical
102 practiced

Implement a simple Python function that, given GPU peak FLOPS (TFLOPS), memory bandwidth (GB/s), per-sample memory traffic (bytes), and batch size, estimates whether a training step is compute-bound or memory-bound using a heuristic. Define the compute and memory time estimates and use a threshold (e.g., compute_time > 2 * memory_time => compute-bound). Provide example outputs for different configurations.

Unlock Full Question Bank

Get access to all Model Training Infrastructure and Distributed Training interview questions and detailed answers.

Sign in to Continue

Join thousands of developers preparing for their dream job.