English
Related papers

Related papers: Vectorized and performance-portable Quicksort

200 papers

Sorting a set of items is a task that can be useful by itself or as a building block for more complex operations. That is why a lot of effort has been put into finding sorting algorithms that sort large sets as fast as possible. But the…

Data Structures and Algorithms · Computer Science 2020-10-05 Timo Bingmann , Jasper Marianczuk , Peter Sanders

The granularity of distributed computing is limited by communication time: there is no point in farming out smaller and smaller tasks if the communication overhead dominates the decrease in processing time due to the added parallelism. In…

Distributed, Parallel, and Cluster Computing · Computer Science 2022-04-28 Theo Jepsen , Stephen Ibanez , Gregory Valiant , Nick McKeown

Merge sort as a divide-sort-merge paradigm has been widely applied in computer science fields. As modern reduced instruction set computing architectures like the fifth generation (RISC-V) regard multiple registers as a vector register group…

Distributed, Parallel, and Cluster Computing · Computer Science 2024-10-02 Jin Zhang , Jincheng Zhou , Xiang Zhang , Di Ma , Chunye Gong

Sorting is one of the most basic algorithms, and developing highly parallel sorting programs is becoming increasingly important in high-performance computing because the number of CPU cores per node in modern supercomputers tends to…

Distributed, Parallel, and Cluster Computing · Computer Science 2023-09-08 Tomoyuki Tokuue , Tomoaki Ishiyama

In our study we implemented and compared seven sequential and parallel sorting algorithms: bitonic sort, multistep bitonic sort, adaptive bitonic sort, merge sort, quicksort, radix sort and sample sort. Sequential algorithms were…

Distributed, Parallel, and Cluster Computing · Computer Science 2015-11-13 Darko Bozidar , Tomaz Dobravec

Deep learning implementations on CPUs (Central Processing Units) are gaining more traction. Enhanced AI capabilities on commodity x86 architectures are commercially appealing due to the reuse of existing hardware and virtualization ease. A…

Machine Learning · Computer Science 2021-03-22 Shabnam Daghaghi , Nicholas Meisburger , Mengnan Zhao , Yong Wu , Sameh Gobriel , Charlie Tai , Anshumali Shrivastava

This paper presents bsort, a non-comparison-based sorting algorithm for signed and unsigned integers, and floating-point values. The algorithm unifies these cases through an approach derived from binary quicksort, achieving $O(wn)$ runtime…

Data Structures and Algorithms · Computer Science 2026-03-11 Benjamín Guzmán

RISC-V CPUs leverage the RVV (RISC-V Vector) extension to accelerate data-parallel workloads. In addition to arithmetic operations, RVV includes powerful permutation instructions that enable flexible element rearrangement within vector…

Hardware Architecture · Computer Science 2025-06-02 Vasileios Titopoulos , George Alexakis , Chrysostomos Nicopoulos , Giorgos Dimitrakopoulos

We present four high performance hybrid sorting methods developed for various parallel platforms: shared memory multiprocessors, distributed multiprocessors, and clusters taking advantage of existence of both shared and distributed memory.…

Distributed, Parallel, and Cluster Computing · Computer Science 2020-03-04 Thoria Alghamdi , Gita Alaghband

The development of an open and free RISC-V architecture is of great interest for a wide range of areas, including high-performance computing and numerical simulation in mathematics, physics, chemistry and other problem domains. In this…

Distributed, Parallel, and Cluster Computing · Computer Science 2024-05-21 V. D. Volokitin , E. P. Vasiliev , E. A. Kozinov , V. D. Kustikova , A. V. Liniov , Y. A. Rodimkov , A. V. Sysoyev , I. B. Meyerov

The two most prominent solutions for the sorting problem are Quicksort and Mergesort. While Quicksort is very fast on average, Mergesort additionally gives worst-case guarantees, but needs extra space for a linear number of elements.…

Data Structures and Algorithms · Computer Science 2018-11-05 Stefan Edelkamp , Armin Weiß

We present EvoSort, a general-purpose adaptive parallel parallel sorting framework accessible at the Python level. EvoSort employs a Genetic Algorithm (GA) to automatically discover and refine critical parameters, including insertion sort…

Distributed, Parallel, and Cluster Computing · Computer Science 2026-01-05 Shashank Raj , Kalyanmoy Deb

The RISC-V "V" extension introduces vector processing to the RISC-V architecture. Unlike most SIMD extensions, it supports long vectors which can result in significant improvement of multiple applications. In this paper, we present our…

Distributed, Parallel, and Cluster Computing · Computer Science 2023-11-10 Sonia Rani Gupta , Nikela Papadopoulou , Miquel Pericàs

In this paper, we analyse the dual pivot Quicksort, a variant of the standard Quicksort algorithm, in which two pivots are used for the partitioning of the array. We are solving recurrences of the expected number of key comparisons and…

Data Structures and Algorithms · Computer Science 2015-03-31 Vasileios Iliopoulos , David B. Penman

Sorting is at the core of many database operations, such as index creation, sort-merge joins, and user-requested output sorting. As GPUs are emerging as a promising platform to accelerate various operations, sorting on GPUs becomes a viable…

Databases · Computer Science 2017-05-22 Elias Stehle , Hans-Arno Jacobsen

Vector search, which returns the vectors most similar to a given query vector from a large vector dataset, underlies many important applications such as search, recommendation, and LLMs. To be economic, vector search needs to be efficient…

This paper shows an application of the theory of sorting networks to facilitate the synthesis of optimized general purpose sorting libraries. Standard sorting libraries are often based on combinations of the classic Quicksort algorithm with…

Data Structures and Algorithms · Computer Science 2017-08-09 Michael Codish , Luís Cruz-Filipe , Markus Nebel , Peter Schneider-Kamp

We introduce a new sorting algorithm that is the combination of ML-enhanced sorting with the In-place Super Scalar Sample Sort (IPS4o). The main contribution of our work is to achieve parallel ML-enhanced sorting, as previous algorithms…

Data Structures and Algorithms · Computer Science 2022-08-26 Ivan Carvalho

Much of the copious literature on the subject of sorting has concentrated on minimizing the number of comparisons and/or exchanges/copies. However, a more appropriate yardstick for the performance of sorting algorithms is based on the total…

Data Structures and Algorithms · Computer Science 2020-12-03 R. C. Hillyard , Yunlu Liaozheng , Sai Vineeth K. R

The analyses of many algorithms and data structures (such as digital search trees) for searching and sorting are based on the representation of the keys involved as bit strings and so count the number of bit comparisons. On the other hand,…

Probability · Mathematics 2012-02-14 James Allen Fill , Svante Janson