Title :
A Partition-Merge Based Cache-Conscious Parallel Sorting Algorithm for CMP with Shared Cache
Author :
Hao, Song ; Du, Zhihui ; Bader, David A. ; Ye, Yin
Author_Institution :
Dept. of Comput. Sci. & Technol., Tsinghua Univ., Beijing, China
Abstract :
To explore chip-level parallelism, the PSC (Parallel Shared Cache) model is provided in this paper to describe high performance shared cache of Chip Multi-Processors (CMP). Then for a specific application, parallel sorting, a cache-conscious parallel algorithm, PMCC (Partition-Merge based Cache-Conscious) is designed based on the PSC model. The PMCC algorithm consists of two steps: the partition-based in-cache sorting and merge-based k-way merge sorting. In the first stage, PMCC first divides the input dataset into multiple blocks so that each block can fit into the shared L2 cache, and then employs multiple cores to perform parallel cache sorting to generate sorted blocks. In the second stage, PMCC first selects an optimized parameter k which can not only improve the parallelism but also reduce the cache missing rate, then performs a k-way merge sorting to merge all the sorted blocks. The I/O complexity of the in-cache sorting step and k-way merge step are analyzed in detail. The simulation results show that the PSC based PMCC algorithm can out-performance the latest PEM based cache-conscious algorithm and the scalability of PMCC is also discussed. The low I/O complexity, high parallelism and the high scalability of PMCC can take advantage of CMP to improve its performance significantly and deal with large scale problem efficiently.
Keywords :
cache storage; merging; microprocessor chips; parallel algorithms; parallel memories; sorting; CMP; I/O complexity; cache missing rate; chip-level parallelism; input dataset; merge-based k-way merge sorting; multiprocessor chip; parallel shared L2 cache sorting; parallel sorting algorithm; parameter optimization; partition-based in-cache sorting; partition-merge based cache-conscious; Algorithm design and analysis; Computer architecture; Computer science; Concurrent computing; Information science; Parallel algorithms; Parallel processing; Partitioning algorithms; Scalability; Sorting; Cache-conscious Algorithm; Chip Multi-Processors (CMP); Parallel Sorting;
Conference_Titel :
Parallel Processing, 2009. ICPP '09. International Conference on
Conference_Location :
Vienna
Print_ISBN :
978-1-4244-4961-3
Electronic_ISBN :
0190-3918
DOI :
10.1109/ICPP.2009.26