WiscSort: External Sorting For Byte-Addressable Storage

07/12/2023
by   Vinay Banakar, et al.
0

We present WiscSort, a new approach to high-performance concurrent sorting for existing and future byte-addressable storage (BAS) devices. WiscSort carefully reduces writes, exploits random reads by splitting keys and values during sorting, and performs interference-aware scheduling with thread pool sizing to avoid I/O bandwidth degradation. We introduce the BRAID model which encompasses the unique characteristics of BAS devices. Many state-of-the-art sorting systems do not comply with the BRAID model and deliver sub-optimal performance, whereas WiscSort demonstrates the effectiveness of complying with BRAID. We show that WiscSort is 2-7x faster than competing approaches on a standard sort benchmark. We evaluate the effectiveness of key-value separation on different key-value sizes and compare our concurrency optimizations with various other concurrency models. Finally, we emulate generic BAS devices and show how our techniques perform well with various combinations of hardware properties.

READ FULL TEXT
research
10/03/2021

Is this the simplest (and most surprising) sorting algorithm ever?

We present an extremely simple sorting algorithm. It may look like it is...
research
03/03/2022

A Formalisation of Algorithms for Sorting Network

This notes explains how standard algorithms that construct sorting netwo...
research
05/16/2022

TopSort: A High-Performance Two-Phase Sorting Accelerator Optimized on HBM-based FPGAs

The emergence of high-bandwidth memory (HBM) brings new opportunities to...
research
07/05/2021

Defeating duplicates: A re-design of the LearnedSort algorithm

LearnedSort is a novel sorting algorithm that, unlike traditional method...
research
04/20/2023

High-Performance and Flexible Parallel Algorithms for Semisort and Related Problems

Semisort is a fundamental algorithmic primitive widely used in the desig...
research
09/17/2022

Robust and Efficient Sorting with Offset-Value Coding

Sorting and searching are large parts of database query processing, e.g....
research
06/20/2020

Coconut: a scalable bottom-up approach for building data series indexes

Many modern applications produce massive amounts of data series that nee...

Please sign up or login with your details

Forgot password? Click here to reset