Abstract
Recently the research on GPGPU has been carried out actively as the performance of GPUs has been increased rapidly. In this paper, we propose the system architecture by benchmarking the existing supercomputer architecture for a cost-effective system using GPUs in low-cost graphics devices and implement a GPU cluster system with eight GPUs. We also make the software development environment that is suitable for the GPU cluster system and use it for the performance evaluation by implementing the n-body problem. According to its result, we found that it is efficient to use multiple GPUs when the problem size is large due to its communication cost. In addition, we could calculate up to eight million celestial bodies by applying the method of calculating block by block to mitigate the problem size constraint due to the limited resource in GPUs.
최근 들어 GPU 성능이 급격하게 향상됨에 따라서 그래픽 처리가 아닌 일반 계산 분야에도 활용하기 위하여 GPGPU 분야에 대한 연구에 많이 이루어지고 있다. 본 논문에서는 저가의 그래픽스 장치에 내재된 GPU를 활용하여 비용 대비 성능이 높은 시스템을 구현하기 위하여 기존의 슈퍼컴퓨터 구조를 벤치마킹한 시스템 구조를 제안하고, 8개의 GPU를 사용하는 GPU 클러스터 시스템을 구현한다. 또한 이를 위한 소프트웨어 환경을 구축하여 n-body 문제를 사용하여 시스템 성능을 분석한다. 성능 평가 결과 사용하는 GPU 수가 많아질수록 통신경비로 인하여 문제 크기가 충분히 커야 효율적임을 알 수 있었다. 그리고 GPU내 자원 부족 문제 때문에 발생하는 문제 크기 제약을 블록 단위로 계산하여 완화할 수 있는 방법을 적용하여 최대 팔백만 개의 천체에 대한 계산을 할 수 있었다.