CUDA를 이용한 조합 전수조사 알고리즘의 속도 개선 방법

An Enhancement Method of Algorithms Visiting all Combinations by a CUDA Method

  • 발행 : 2013.10.25

초록

n개의 원소로 이루어진 집합 S에서 r개의 원소를 선택하여 만들 수 있는 모든 조합을 평가하여 최적의 조합을 찾아내는 것은 많은 공학적 문제를 일반화하여 풀 수 있는 방법이다. 조합 전수조사 알고리즘은 경우의 수가 매우 크거나 각 조합을 평가하는데 많은 시간이 소요될 경우 알고리즘의 수행 속도가 급격히 저하되는 문제가 있다. 본 논문은 CUDA를 이용하여 각각의 조합을 GPU상의 스레드에서 병렬적으로 평가하는 기법을 제안한다. 실험 결과는 GPU상에서 동작하는 병렬적인 알고리즘이 CPU상에서 동작하는 순차적인 알고리즘에 비해 최대 약 900배의 성능 향상이 있음을 보인다.

Visiting k-combinations of a set S which has n elements is the general representation of many engineering problems. The performance of algorithms visiting all combinations, however, dramatically degrades with growing cases and the time to evaluate each combination. This paper presents the method to enhance the performance of these algorithms by a CUDA method. The experimental results show that the parallel algorithm running on GPU is approximately 900 times faster than the serial algorithm running on CPU.

키워드