Relaxed min-max 힙을 병합하는 병렬 알고리즘

A Parallel Algorithm for Merging Relaxed Min-Max Heaps

  • 민용식 (호서대학교 컴퓨터학부)
  • 발행 : 1998.05.01

초록

본 논문에서는 relaxed min-max heap을 병합시키기 위하여 새로운 자료구조인 개선된 relaxed min-max-pair 힙을 제시함과 동시에, 두개의 relaxed min-max 힙, 즉 크기가 n인 relaxed min-max nheap과 크기가 k인 relaxed min-max kheap으로 구성된 우선 순위 큐를 병합시키기 위한 병렬 알고리즘을 제시하고자 한다. 본 논문에서는 [9]의 방법으로부터 relaxed min-max 힙을 병합 시키기 위해서 이용된 blossomed tree와 lazying 방법을 제거하여도 병합되는 새로운 방법을 제시하였다. 결과적으로 본 논문에 제시된 방법은 max($2^{i-1}$,[(m+1/4)])개의 프로세서를 이용할 경우, 시간 복잡도가 O(log(log(n/k))${\times}$log(k))임을 볼 수가 있다. 그리고 크기가 서로 다른 두 개의 relaxed min-max heap으로 구성된 8백만개의 데이터를 병합시키기 위해서, MasPar 머쉰에서 64개의 프로세서를 이용하여 실행시킨 결과 35.205의 Speedup을 얻었다.

This paper presents a data structure that implements a mergable double-ended priority queue : namely an improved relaxed min-max-pair heap. By means of this new data structure, we suggest a parallel algorithm to merge priority queues organized in two relaxed heaps of different sizes, n and k, respectively. This new data-structure eliminates the blossomed tree and the lazying method used to merge the relaxed min-max heaps in [9]. As a result, employing max($2^{i-1}$,[(m+1/4)]) processors, this algorithm requires O(log(log(n/k))${\times}$log(n)) time. Also, on the MarPar machine, this method achieves a 35.205-fold speedup with 64 processors to merge 8 million data items which consist of two relaxed min-max heaps of different sizes.

키워드