AI Hardware & Software Stack

Which describes tensor parallelism, which splits a large layer's matrix multiplication too big for one GPU across several GPUs?

  1. AEach GPU holds a full model replica and the data is split
  2. BThe weight matrix is split by rows or columns across GPUs, each computes a partial product, and results are combined through communication
  3. CEach layer is placed on a different GPU and processed in turn
Show answer and explanation

Answer: B. The weight matrix is split by rows or columns across GPUs, each computes a partial product, and results are combined through communication

In tensor parallelism, the weight matrix might be split column-wise into four parts held by four GPUs, each computing the product of the same input with its own columns. Combining results by concatenation or summation requires communication in every layer, so it is generally used among GPUs in the same server joined by very fast links. Combined with data and pipeline parallelism, it is used to train enormous models.

  • A. That is data parallelism.
  • B. Correct. It splits computation within a layer.
  • C. That is pipeline parallelism.
Practice this topic Back to topic

More AI Hardware & Software Stack questions

  1. In pipeline parallelism, where a model's layers are split across GPUs in sequence, why is a batch divided into micro-batches?
  2. What does the all-reduce communication used in distributed training do?
  3. Which describes gradient checkpointing (activation recomputation) used in training?
  4. What is the main reason systolic arrays in AI accelerators compute matrix products efficiently?
  5. Why do some AI accelerators include large on-chip SRAM (tens to hundreds of MB)?