Abstract
In quicksort, due to branch mispredictions, a skewed pivot-selection strategy can lead to a better performance than the exact-median pivot-selection strategy, even if the exact median is given for free. In this paper we investigate the effect of branch mispredictions on the behaviour of mergesort. By decoupling element comparisons from branches, we can avoid most negative effects caused by branch mispredictions. When sorting a sequence of n elements, our fastest version of mergesort performs n log 2 n + O(n) element comparisons and induces at most O(n) branch mispredictions. We also describe an in-situ version of mergesort that provides the same bounds, but uses only O(log 2 n) words of extra memory. In our test computers, when sorting integer data, mergesort was the fastest sorting method, then came quicksort, and in-situ mergesort was the slowest of the three. We did a similar kind of decoupling for quicksort, but the transformation made it slower.
Original language | English |
---|---|
Title of host publication | Experimental Algorithms : 11th International Symposium, SEA 2012, Bordeaux, France, June 7-9, 2012. Proceedings |
Editors | Ralf Klasing |
Number of pages | 12 |
Publisher | Springer |
Publication date | 2012 |
Pages | 160-171 |
ISBN (Print) | 978-3-642-30849-9 |
ISBN (Electronic) | 978-3-642-30850-5 |
DOIs | |
Publication status | Published - 2012 |
Event | 11th International Symposium on Experimental Algorithms - Bordeaux, France Duration: 7 Jun 2012 → 9 Jun 2012 Conference number: 11 |
Conference
Conference | 11th International Symposium on Experimental Algorithms |
---|---|
Number | 11 |
Country/Territory | France |
City | Bordeaux |
Period | 07/06/2012 → 09/06/2012 |
Series | Lecture notes in computer science |
---|---|
Volume | 7276 |
ISSN | 0302-9743 |