Core Concepts
본 논문은 대규모 분산 메모리 시스템에서 효율적으로 문자열을 정렬하는 실용적이고 효율적인 알고리즘을 제안한다. 이 알고리즘은 기존 알고리즘에 비해 최대 5배 더 빠른 성능을 보인다.
Abstract
이 논문은 대규모 분산 메모리 시스템에서 문자열을 효율적으로 정렬하는 알고리즘을 제안한다. 주요 내용은 다음과 같다:
기존 문자열 정렬 알고리즘은 대규모 병렬 시스템에 확장되기 어려운 문제가 있었다. 이를 해결하기 위해 다음과 같은 새로운 알고리즘을 제안한다:
다단계 병합 정렬 (Multi-Level Merge Sort, MSk): 프로세서를 그룹으로 나누어 독립적인 정렬 문제를 해결하는 방식으로, 각 단계의 내부 작업량과 통신량을 최소화한다.
다단계 접두사 배가 병합 정렬 (Multi-Level Prefix Doubling Merge Sort, PDMSk): 문자열의 구분 접두사만을 교환하여 통신량을 더욱 줄인다.
이론적 분석을 통해 제안 알고리즘의 성능을 입증하였다. MSk는 각 단계의 내부 작업량과 통신량이 N (총 문자 수) 또는 D (구분 접두사 총 길이)에 가까운 것으로 나타났다. PDMSk는 D에 가까운 성능을 보였다.
실험 결과, 제안 알고리즘은 기존 알고리즘에 비해 최대 5배 더 빠른 성능을 보였다. 특히 대규모 시스템에서 우수한 확장성을 보였다.
Stats
총 문자 수 N은 입력 크기에 따라 100GB에서 97.7GB 사이였다.
구분 접두사 총 길이 D는 입력 크기에 따라 N의 33.6%에서 72.6% 사이였다.
최대 문자열 길이 ˆ
ℓ는 입력 크기에 따라 1.04M에서 2.07M 사이였다.
Quotes
"현재 문자열 정렬 알고리즘은 대규모 병렬 분산 메모리 시스템에 확장되기 어려운 문제가 있다."
"본 논문에서는 실용적이고 효율적인 분산 메모리 문자열 정렬 알고리즘을 제안한다."
"제안 알고리즘은 기존 알고리즘에 비해 최대 5배 더 빠른 성능을 보였다."