Defeating duplicates: A re-design of the LearnedSort algorithm

07/05/2021
by   Ani Kristo, et al.
0

LearnedSort is a novel sorting algorithm that, unlike traditional methods, uses fast ML models to boost the sorting speed. The models learn to estimate the input's distribution and arrange the keys in sorted order by predicting their empirical cumulative distribution function (eCDF) values. LearnedSort has shown outstanding performance compared to state-of-the-art sorting algorithms on several datasets, both synthetic and real. However, given the nature of the eCDF model, its performance is affected in the cases when the input data contains a large number of repeated keys (i.e., duplicates). This work analyzes this scenario in depth and introduces LearnedSort 2.0: a re-design of the algorithm that addresses this issue and enables the algorithm to maintain the leading edge even for high-duplicate inputs. Our extensive benchmarks on a large set of diverse datasets demonstrate that the new design performs at much higher sorting rates than the original version: an average of 4.78x improvement for high-duplicate datasets, and 1.60x for low-duplicate datasets while taking the lead among sorting algorithms.

READ FULL TEXT

page 6

page 8

research
07/17/2023

LearnedSort as a learning-augmented SampleSort: Analysis and Parallelization

This work analyzes and parallelizes LearnedSort, the novel algorithm tha...
research
05/08/2023

Parallel External Sorting of ASCII Records Using Learned Models

External sorting is at the core of many operations in large-scale databa...
research
06/03/2022

Onesweep: A Faster Least Significant Digit Radix Sort for GPUs

We present Onesweep, a least-significant digit (LSD) radix sorting algor...
research
10/15/2019

Apply Sorting Algorithms to FAST Problem

FAST problem is finding minimum feedback arc set problem in tournaments....
research
07/12/2023

WiscSort: External Sorting For Byte-Addressable Storage

We present WiscSort, a new approach to high-performance concurrent sorti...
research
09/28/2020

Engineering In-place (Shared-memory) Sorting Algorithms

We present sorting algorithms that represent the fastest known technique...
research
10/29/2018

Simple and Fast BlockQuicksort using Lomuto's Partitioning Scheme

This paper presents simple variants of the BlockQuicksort algorithm desc...

Please sign up or login with your details

Forgot password? Click here to reset