We focuss on the improvement of data locality for the in-core sequential Radix sort algorithm for 32-bit positive integer keys. We propose a new algorithm that we call Cache Conscious Radix sort, CC-Radix. CC-Radix improves the data locality by dynamicallypartitioning the data set into subsets that fit in cache level L{sub}2. Once in that cache level, each subset is sorted with Radix sort. In order to obtain the best implementations, we analyse the algorithms and obtain the algorithmic parameters that minimize the number of misses on cache levels L{sub}1 and L{sub}2, and the TLB structure. Here, we present results for a MIPS R10000 processor based computer the SGI Origin 2000. Our results show that our algorithm is about 2 and 1.4 times faster than Quicksort and Explicit Block Transfer Radix sort, which is the previous fastest sorting algorithm to our knowledge, respectively
展开▼