Core Concepts
순환 데이터 병렬 처리(CDP)는 데이터 병렬 처리(DP)의 단점을 해결하여 메모리 사용과 통신 비용을 줄이는 새로운 병렬 처리 방법이다.
Abstract
이 논문은 순환 데이터 병렬 처리(Cyclic Data Parallelism, CDP)라는 새로운 병렬 처리 방법을 제안한다. 기존의 데이터 병렬 처리(Data Parallelism, DP)에서는 모든 워커가 동시에 마이크로 배치를 처리하지만, CDP에서는 각 워커가 순차적으로 마이크로 배치를 처리한다.
CDP의 주요 장점은 다음과 같다:
메모리 사용량 감소: DP에서는 순방향 전파 시 활성화 함수 값의 메모리 사용량이 최대가 되지만, CDP에서는 이 값이 일정하게 유지된다.
통신 비용 감소: DP에서는 모든 워커가 동시에 경사도를 통신해야 하지만, CDP에서는 점대점 통신으로 경사도를 전달할 수 있다.
CDP는 기존의 데이터 병렬 처리, 모델 병렬 처리, Zero-DP 등의 방법과 결합하여 사용할 수 있다. 이를 통해 필요한 GPU 개수를 줄이고 통신 비용을 감소시킬 수 있다.
실험 결과, CDP를 사용하여 CIFAR-10과 ImageNet 데이터셋에서 ResNet-18과 ResNet-50 모델을 학습할 때 DP와 유사한 성능을 보였다. 또한 ResNet-50과 ViT-B/16 모델에서 활성화 함수 값의 메모리 사용량이 DP 대비 각각 30%, 42% 감소하는 것을 확인했다.
Stats
순환 데이터 병렬 처리(CDP)를 사용하면 데이터 병렬 처리(DP)에 비해 활성화 함수 값의 메모리 사용량이 ResNet-50에서 30% 감소하고, ViT-B/16에서 42% 감소한다.
Quotes
"순환 데이터 병렬 처리(CDP)는 데이터 병렬 처리(DP)의 단점을 해결하여 메모리 사용과 통신 비용을 줄이는 새로운 병렬 처리 방법이다."
"CDP의 주요 장점은 메모리 사용량 감소와 통신 비용 감소이다."