A Dynamically Tuned Sorting Library
Xiaoming Li, María Jesús Garzarán, and David Padua 2004 Stephan Semmler
Sorting Library Xiaoming Li, Mara Jess Garzarn, and David Padua - - PowerPoint PPT Presentation
Software Engineering Seminar Stephan Semmler A Dynamically Tuned Sorting Library Xiaoming Li, Mara Jess Garzarn, and David Padua 2004 The Sorting Library Installation Runtime Hardware Input data Empirical Machine Sorting
Xiaoming Li, María Jesús Garzarán, and David Padua 2004 Stephan Semmler
Hardware Input data
Fastest Algorithm
Heap
Sorted Subset Sorted Subset Sorted Subset Sorted Subset
p subsets
7 5 6 4 2 3 1 9 8 7 5 6 4 2 3 1 9 8 7 5 9 4 2 3 1 6 8 7 5 9 4 2 3 1 6 8 7 5 9 4 2 3 1 6 8 7 5 9 4 2 3 1 6 8 7 5 9 4 2 3 1 6 8 7 5 9 4 2 3 1 6 8 7 5 9 4 2 3 1 6 8 7 5 9 6 2 3 1 4 8
13 322 44 142 34 431 1 23
34 44 23 13 142 322 1 431 13 322 44 142 34 431 1 23 13 322 44 142 34 431 1 23
13 322 44 142 34 431 1 23
13 322 44 142 34 431 1 23 13 322 44 142 34 431 1 23 431 322 142 23 44 1 13 34
431 322 142 23 44 1 13 34
142 431 322 23 44 1 13 34 44 23 322 34 431 1 13 142 431 322 142 23 44 1 13 34
1 4 6 5 2 1 4 6 2 5 1 4 6 5 2 1 4 6 5 2 1 4 6 2 5 1 4 6 2 5 1 4 6 2 5 1 5 6 2 4 1 5 6 2 4 1 5 6 2 4 1 5 6 2 4 1 5 6 2 4 6 5 1 2 4 6 1 5 2 4 6 4 5 2 1 6 4 5 1 2 6 4 5 1 2
1 2 3 4 5 6 7 1 2 3 4 5 6 7
Hardware
Small Partition
Subset Subset Subset Subset
p subsets
Hardware
1 2 3 4 5 6 7 8 9 5 10 15 20
Execution Time (G=2^30 Cycles) Number of Keys (M=2^20)
Quicksort Radix sort Merge sort
6.0E+08 6.5E+08 7.0E+08 7.5E+08 8.0E+08 8.5E+08 9.0E+08 9.5E+08 1.0E+09 1.1E+09 1.E+02 1.E+03 1.E+04 1.E+05 1.E+06 1.E+07 1.E+08 Execution Time (Cycles) Standard Deviation
Intel PIII Xeon (2M)
Quicksort Radix sort Merge sort
6.0E+08 6.5E+08 7.0E+08 7.5E+08 8.0E+08 8.5E+08 9.0E+08 9.5E+08 1.0E+09 1.1E+09 1.1E+09 1.E+02 1.E+03 1.E+04 1.E+05 1.E+06 1.E+07 1.E+08 Execution Time (Cycles) Standard Deviation
Intel PIII Xeon (12M)
Quicksort Radix sort Merge sort
𝑗
Input data sets Quicksort Radix sort Merge sort Input sizes Entropy Prediction function Optimized Algorithms
Sorted data Best Sorting Algorithm
Prediction function Input size Entropy Input data
300 350 400 450 500 550 600 1.E+02 1.E+03 1.E+04 1.E+05 1.E+06 1.E+07 Execution Time (Cycles per key) Stadard Deviation
AMD Athlon
Quicksort Radix sort Merge sort Result