
PyTorch FSDP (Fully Sharded Data Parallel) 완벽 이해하기!
·
🛠️ Engineering/Distributed Training
1. FSDP(Fully Sharded Data Parallel)이란?1.1 FSDP 개념FSDP는 PyTorch에서 제공하는 고급 분산 학습 기법으로, 모델의 모든 파라미터를 GPU마다 복제하는 기존 DDP 방식과 달리, 모델의 파라미터를 GPU끼리 shard(조각) 단위로 나누어 저장하는 방식이다. 이를 통해 GPU 메모리 사용량을 대폭 절약할 수 있다. FSDP는 GPU마다 모델 전체가 아닌 일부 shard만 저장하고, forward 및 backward 연산 시 필요한 파라미터를 GPU 간에 서로 교환(all-gather)하여 연산을 수행한 후 다시 shard로 분산 저장(reduce-scatter)하는 방식으로 동작한다. 1.2 DDP vs FSDP 차이구분DDPFSDP모델 파라미터각 GPU가 전..