Maximizing the utilization of graphics processing unit (GPU) resources becomes a crucial factor in directly reducing a data center’s Total cost of ownership (TCO). To address this, GPU partitioning technology has been developed, enabling the simultaneous execution of multiple workloads by dividing a single GPU. However, research on the analysis of characteristics when GPU partitioning technology is applied in real-world machine learning inference systems has not been actively conducted. This thesis analyzes workloads when utilizing GPU partitioning technology to enhance the efficiency of machine learning inference systems. Specifically, we focus on aspects such as resource utilization, throughput, and latency in the context of GPU partitioning. Based on the characterization results, we propose an efficient batching system for GPU partitioning-based machine learning inference to optimize the performance of the overall system further.
머신 러닝 어플리케이션에 대한 수요가 증가함에 따라, 효율적인 머신 러닝 추론 시스템 개발의 중요성이 대두되고 있다. 데이터 센터에서는 이러한 머신 러닝 연산을 효율적으로 처리하기 위해 병렬 처리에 특화된 그래픽 처리 장치를 머신 러닝 추론에 활용하고 있다. 이때 그래픽 처리 장치의 자원 활용률을 높이는 것이 데이터 센터 유지 및 관리 비용을 절감하는 주요 요소이다. 이를 달성하기 위해 여러 워크로드를 동시에 실행할 수 있도록 하나의 그래픽 처리 장치를 분할하는 기술이 등장하였다. 그러나 이러한 그래픽 처리 장치 분할 기술이 실제 머신 러닝 추론 시스템에 활용될 때의 특성 분석에 대한 연구는 활발히 이루어지지 않았다. 본 학위 논문에서는 머신 러닝 추론 시스템의 효율성을 높이고자 그래픽 처리 장치 분할 기술을 사용할 때의 워크로드를 분석한다. 특히, 자원 활용률, 처리량 및 응답 시간을 중심으로 그래픽 처리 장치 분할 시의 장점을 분석한다. 또한 워크로드 분석을 바탕으로 그래픽 처리 장치 분할 기술이 적용된 머신 러닝 추론 시스템을 위한 효율적인 배칭 시스템을 제안한다.