Tensor Parallelism (TP)

개요
Tensor Parallelism(TP)은 대규모 신경망 학습 시 하나의 연산(예: 행렬 곱셈)을 여러 GPU로 나누어 처리하는 **모델 병렬화(Model Parallelism)**의 한 형태이다. TP는 특히 GPT, BERT, LLaMA와 같은 초거대 언어 모델(LLM) 학습에서 핵심 역할을 하며, GPU 메모리 한계를 극복하고 연산 속도를 향상시키기 위해 사용된다.
1. 개념 및 정의
Tensor Parallelism은 **단일 Layer 내의 텐서 연산을 여러 GPU로 분할(distribute)**하여 계산을 병렬화하는 기법이다. 예를 들어, 거대한 Weight Matrix(W ∈ R^{m×n})를 여러 GPU에 나누어 분할 저장하고, 입력 벡터에 대한 연산을 분산 수행한 후 결과를 통합(Gather/Reduce)한다.
이는 Pipeline Parallelism이 Layer 단위로 분할하는 것과 달리, Layer 내부의 연산을 병렬화하여 더 세밀한 분산 처리를 가능하게 한다.
2. 특징
| 항목 | Tensor Parallelism | Pipeline Parallelism | Data Parallelism |
| 병렬 단위 | 텐서 연산 내부 | 네트워크 Layer | 미니배치 데이터 |
| 통신 빈도 | 높음 | 중간 | 낮음 |
| 메모리 절감 효과 | 매우 큼 | 보통 | 낮음 |
| 병렬 효율성 | 고성능 클러스터에 적합 | 파이프라인 스테이지에 의존 | 일반적 환경에 적합 |
| 대표 프레임워크 | Megatron-LM, DeepSpeed | GPipe, PipeDream | PyTorch DDP |
→ TP는 메모리 절약과 계산 효율성을 동시에 확보하지만, GPU 간 통신 최적화가 필수적이다.
3. 구성 요소
| 구성 요소 | 설명 | 예시 |
| Tensor Sharding | 가중치 텐서를 GPU별로 분할 저장 | Column/Row Sharding |
| Collective Operations | 분산 연산 결과의 통합 | AllReduce, AllGather |
| Synchronization Barrier | GPU 간 연산 동기화 | CUDA Stream Sync |
| NCCL Backend | GPU 간 데이터 통신 라이브러리 | NVIDIA NCCL, UCX |
| Overlap Scheduling | 통신·계산 중첩 수행 | Compute-Comm Overlap |
→ Tensor Sharding 전략(행·열 분할)에 따라 성능과 통신 비용이 달라진다.
4. 기술 요소
| 기술 요소 | 설명 | 관련 기술 |
| Megatron-LM | NVIDIA의 LLM 학습용 TP 구현체 | GPT-3, BLOOM 학습 적용 |
| AllReduce / AllGather | GPU 간 Gradient 및 Activation 병합 | NCCL Collective Ops |
| Tensor Slicing | 행 또는 열 기준 Weight 분할 | ColumnParallelLinear / RowParallelLinear |
| Communication Overlap | 계산과 통신 병행 수행 | CUDA Stream 활용 |
| Hybrid Parallelism | TP + Pipeline + Data 병행 구성 | 3D Parallelism |
→ TP는 대규모 모델 학습의 기본 구성 요소로, 다른 병렬화 기법과 함께 사용되어 3D 병렬(3DP) 구조를 형성한다.
5. 장점 및 이점
| 구분 | 설명 | 효과 |
| 메모리 효율성 | 대형 Weight를 GPU별로 분할 저장 | GPU 메모리 한계 극복 |
| 계산 성능 향상 | 다중 GPU 동시 연산 | 학습 시간 단축 |
| 확장성 | 수십~수백 개 GPU까지 확장 가능 | 초대형 모델 학습 지원 |
| 유연성 | 다양한 분할 전략 선택 가능 | 모델 구조별 최적화 용이 |
| 병렬성 극대화 | Layer 내부 연산 병렬화 | 높은 GPU 활용률 확보 |
→ TP는 LLM 학습 인프라의 효율적 스케일링을 위한 필수적 기술로 자리잡았다.
6. 주요 활용 사례 및 고려사항
| 사례 | 내용 | 기대 효과 |
| GPT-3 학습 | Megatron-LM 기반 TP 구성 | 175B 파라미터 모델 학습 실현 |
| BLOOM 모델 | 3D 병렬(TP + DP + PP) 구조 적용 | 글로벌 분산 학습 구현 |
| DeepSpeed-Inference | TP 기반 추론 최적화 | 실시간 대규모 추론 가능 |
| LLaMA 파인튜닝 | 부분적인 TP 구조 활용 | 저비용 GPU에서도 대형 모델 학습 |
고려사항: GPU 간 통신 대역폭이 낮거나 네트워크 지연이 클 경우, TP 성능은 급격히 저하될 수 있다. 따라서 NVLink, InfiniBand 등 고속 인터커넥트가 필수이다.
7. 결론
Tensor Parallelism은 초대형 딥러닝 모델 학습의 기반 기술 중 하나로, 모델 내부 연산을 GPU 간 분할 처리하여 메모리와 계산 효율을 극대화한다. TP는 Pipeline Parallelism, Data Parallelism과 함께 3D Parallelism의 핵심 축을 형성하며, 대규모 AI 시스템의 학습 및 추론 효율을 결정짓는 핵심 요소로 자리잡고 있다.