Kernkonzepte
심층 학습 클러스터에서 GPU 사용 효율성을 높이기 위해 GPU 공유 시스템인 탤리를 소개하며, 탤리는 비침습적인 방식으로 고 우선순위 작업의 성능을 보장하면서 여러 작업을 단일 GPU에서 효율적으로 실행할 수 있도록 한다.
Zusammenfassung
탤리: 동시 심층 학습 워크로드를 위한 비침습적 성능 격리 기술
본 논문은 대규모 심층 학습 클러스터에서 GPU 사용 효율성을 높이기 위한 새로운 GPU 공유 시스템인 탤리를 제안합니다.
심층 학습 클러스터에서의 GPU 공유 문제
- 심층 학습은 이미지 인식, 기계 번역, 추천 시스템, 자율 주행 등 광범위한 분야에서 뛰어난 성능을 보여주면서 컴퓨팅 리소스에 대한 수요가 증가하고 있습니다.
- 하지만 대규모 심층 학습 클러스터에서는 GPU 활용률이 낮다는 문제점이 제기되고 있습니다.
- GPU 공유는 여러 작업을 단일 GPU에서 동시에 실행하여 리소스 활용도를 높이는 유망한 해결책으로 제시되고 있습니다.
- 그러나 기존 GPU 공유 메커니즘은 높은 통합 비용, 부적절한 성능 격리, 제한적인 애플리케이션 호환성과 같은 문제점을 가지고 있습니다.
탤리 시스템 설계 및 주요 특징
- 탤리는 애플리케이션과 GPU 사이에서 투명하게 작동하는 가상화 계층으로 설계되어 비침습적인 GPU 공유를 가능하게 합니다.
- 탤리는 작업을 인식하지 않고 스케줄링 알고리즘을 사용하여 고 우선순위 작업의 커널 실행을 우선순위를 정하고 GPU 유휴 기간 동안 저 우선순위 작업의 커널을 기회적으로 스케줄링합니다.
- 탤리는 커널 슬라이싱 및 선점이라는 두 가지 스케줄링 기법을 사용하여 고 우선순위 작업에 대한 성능 격리를 보장합니다.
- 슬라이싱은 대규모 커널을 여러 개의 더 작은 세그먼트로 나누어 보다 세밀하게 제어할 수 있도록 합니다.
- 선점은 활성 커널을 중단할 수 있도록 하여 고 우선순위 작업에 리소스를 즉시 할당할 수 있도록 합니다.
- 탤리는 GPU 커널 코드를 변환하여 슬라이싱 및 선점 기법을 구현하며, 이는 작업에 대한 사전 지식 없이도 수행될 수 있습니다.
- 또한 탤리는 투명한 프로파일러를 사용하여 다양한 실행 구성에서 변환된 커널의 성능을 프로파일링하고 예상 처리량을 예측합니다.
- 이러한 정보를 바탕으로 우선순위 인식 스케줄러는 고 우선순위 작업의 성능 요구 사항을 충족하면서 GPU 처리량을 최적화하기 위해 적절한 스케줄링 기법과 매개변수를 동적으로 선택합니다.
성능 평가 결과
- 탤리는 다양한 추론 및 학습 워크로드를 사용하여 평가되었으며, 그 결과 기존 GPU 공유 솔루션과 비교하여 뛰어난 성능을 보여주었습니다.
- 탤리는 평균 7.2%의 오버헤드만으로 고 우선순위 추론 작업의 99번째 백분위수 레이턴시를 유지하면서 최첨단 GPU 공유 솔루션인 TGS가 달성한 시스템 처리량의 80%를 달성했습니다.
- 이는 탤리가 강력한 성능 격리 보장을 제공하는 동시에 GPU 효율성을 극대화하는 데 효과적임을 입증합니다.
결론
- 탤리는 대규모 프로덕션 심층 학습 클러스터를 위한 새로운 비침습적 GPU 공유 시스템으로, 레이턴시에 민감한 고 우선순위 작업과 처리량 중심의 저 우선순위 작업을 효율적으로 공동 배치할 수 있도록 합니다.
- 탤리는 GPU 커널 스케줄링에 대한 새로운 접근 방식을 제시하며, 커널 슬라이싱 및 선점을 통해 세밀한 GPU 커널 스케줄링을 달성합니다.
- 또한 탤리는 우선순위 인식 스케줄러를 사용하여 GPU 처리량을 최적화하는 동시에 성능 격리 보장을 유지합니다.
- 탤리는 다양한 추론 및 학습 워크로드에서 평가되었으며, 그 결과 기존 GPU 공유 솔루션과 비교하여 뛰어난 성능을 보여주었습니다.
Statistiken
알리바바의 연구에 따르면 프로덕션 심층 학습 클러스터에서 GPU 사용률 중앙값은 4.2%까지 낮아질 수 있습니다.
효과적인 GPU 공유 메커니즘을 통해 클러스터에 필요한 GPU 리소스 양을 평균 50%, 피크 시간대에는 최대 73%까지 줄일 수 있습니다.
탤리는 고 우선순위 작업의 99번째 백분위수 레이턴시에 평균 7.2%의 오버헤드만 발생시킵니다.
탤리는 최첨단 GPU 공유 솔루션인 TGS가 달성한 시스템 처리량의 80%를 달성했습니다.
Zitate
"GPU underutilization is a significant concern in many production deep learning clusters, leading to prolonged job queues and increased operational expenses."
"Our evaluation, conducted on a diverse set of workload combinations, demonstrates that Tally on average incurs a mere 7.2% overhead on the 99𝑡ℎ-percentile latency of high-priority inference tasks when executed concurrently with best-effort training workloads compared to 188.9% overhead exhibited by the state-of-the-art GPU sharing systems like TGS, while achieving over 80% of TGS’s system throughput."