# Tensor parallelism (chia ngang mô hình qua nhiều máy)

> VI: https://5ac.vn/wiki/tensor-parallelism/ · EN: https://5ac.vn/en/wiki/tensor-parallelism/ · lang: vi · spec_as_of 2026-10-22 (spec no formal spec) · cluster C16

Chia trọng số một mô hình ngang nhiều máy, mỗi máy giữ một phần và cùng tính mỗi bước: với 284 tỷ tham số và 1M context thì đây là điều kiện để chạy được.

---
## Định nghĩa

Tensor parallelism (chia tensor song song, viết tắt TP) là cách chia ngang trọng số của một mô hình ra nhiều máy: mỗi node giữ một phần weights và cùng tham gia mọi bước suy luận, thay vì một node giữ trọn mô hình. Đây là chi tiết cấu hình, không phải cả bài toán triển khai — lượng tử hóa, batching, cache KV nằm ở entry [Inference engine (vLLM, engine suy luận)](/wiki/inference-engine/). Ở mốc 284 tỷ tham số với cửa sổ 1 triệu token, một node 128 GB bộ nhớ chung không chứa nổi tổng weights cộng cache KV, nên chia ngang không còn là cách tối ưu mà là điều kiện để chạy được.

## Cơ chế

Paper Megatron-LM (arXiv:2104.04473, v5) nêu đúng nút thắt: bộ nhớ một GPU có hạn nên model lớn không vừa cả một máy nhiều GPU, và cách dùng song song một cách đơn giản sẽ vấp hai vấn đề — giao tiếp giữa các node tốn kém, hoặc thiết bị này chờ thiết bị kia. Paper vì thế nghiên cứu cách kết hợp tensor, pipeline và data parallelism với chi phí của từng loại.

Trên 2× DGX Spark, recipe DeepSeek V4 Flash dựng nguyên đoạn tensor parallelism (TP=2), và diễn đạt rất gọn: model được chia ngang hai máy, mỗi node giữ một phần weights và cùng tham gia suy luận. Hai máy kéo theo bài toán gấp đôi: đồng bộ, network fabric, NCCL và thứ tự khởi động. Env mạng cho TP=2 gồm WORKER_HOST, MASTER_ADDR, NCCL_IB_HCA, NCCL_SOCKET_IFNAME, VLLM_HOST_IP và HF_CACHE; dây nối phải là cáp QSFP56 RoCE 200G DAC chứ không phải Ethernet thường. Script vận hành chạy worker trước, head sau — đảo thứ tự thì NCCL rendezvous treo. Bản vá spin-wait còn hạ SpinCondition.busy_loop_s từ 1 xuống 0.002 để đừng chiếm trọn một lõi Grace P-core.

## Bối cảnh ứng dụng

Cấu hình khả thi thấp nhất cho DeepSeek V4 Flash là hai máy: model này cần TP=2 cùng 1M context và NVFP4, còn một node thì phải xuống model nhẹ hơn chạy vừa 128 GB. Bảng model cụm 2 node TP=2 nằm ở entry [Local LLM deployment (triển khai LLM cục bộ)](/wiki/local-llm-deployment/). Hai khái niệm hay bị nhầm lẫn: chia một mô hình ngang nhiều máy là việc của TP, còn đặt prefill và decode trên hai cụm GPU riêng là bài toán kiến trúc khác — xem entry [Tách prefill/decode (PD disaggregation)](/wiki/prefill-decode-disaggregation/).

## Nguồn đã truy xuất

- [Deploy DeepSeek V4 Flash trên 2× DGX Spark — recipe đầy đủ, đo thật](/blog/deploy-deepseek-v4-flash-2x-dgx-spark/) — TP=2, env cho TP=2, cáp QSFP56 RoCE 200G DAC, thứ tự worker/head — truy cập 22/10/2026
- <https://arxiv.org/abs/2104.04473> — paper Megatron-LM: Efficient Large-Scale Language Model Training on GPU Clusters Using Megatron-LM (v5) — xác minh qua arXiv API ngày 22/10/2026

## Liên quan

- [Local LLM deployment (triển khai LLM cục bộ)](/wiki/local-llm-deployment/)
- [Inference engine (vLLM, engine suy luận)](/wiki/inference-engine/)
- [Tách prefill/decode (PD disaggregation)](/wiki/prefill-decode-disaggregation/)
