Sesquickselect: One and a half pivots for cache-efficient selection



Martínez, Conrado, Nebel, Markus and Wild, Sebastian ORCID: 0000-0002-6061-9177
(2018) Sesquickselect: One and a half pivots for cache-efficient selection. .

[img] Text
martinez-nebel-wild-2019.pdf - Author Accepted Manuscript

Download (908kB) | Preview

Abstract

Because of unmatched improvements in CPU performance, memory transfers have become a bottleneck of program execution. As discovered in recent years, this also affects sorting in internal memory. Since partitioning around several pivots reduces overall memory transfers, we have seen renewed interest in multiway Quicksort. Here, we analyze in how far multiway partitioning helps in Quickselect. We compute the expected number of comparisons and scanned elements (approximating memory transfers) for a generic class of (non-adaptive) multiway Quickselect and show that three or more pivots are not helpful, but two pivots are. Moreover, we consider "adaptive" variants which choose partitioning and pivot-selection methods in each recursive step from a finite set of alternatives depending on the current (relative) sought rank. We show that "Sesquickselect", a new Quickselect variant that uses either one or two pivots, makes better use of small samples w.r.t. memory transfers than other Quickselect variants.

Item Type: Conference or Workshop Item (Unspecified)
Additional Information: appears in ANALCO 2019
Uncontrolled Keywords: cs.DS, cs.DS
Depositing User: Symplectic Admin
Date Deposited: 21 Oct 2019 15:02
Last Modified: 19 Jan 2023 00:21
DOI: 10.1137/1.9781611975505.6
Related URLs:
URI: https://livrepository.liverpool.ac.uk/id/eprint/3058940