Parallel Sorting
Frank Nielsen · Undergraduate topics in computer science · 2016
Cited by 0
Read the abstract, see who wrote it and who cites it, and get the citation in APA, MLA, Chicago or Harvard.
About 3,727 papers for “parallel sorting”
Frank Nielsen · Undergraduate topics in computer science · 2016
Cited by 0
Béla Bollobás, Andrew Thomason · Discrete Applied Mathematics · 1983
Cited by 27
Akl, Selim G. · 1985
Parallel Sorting Algorithms explains how to use parallel algorithms to sort a sequence of items on a variety of parallel computers. The book reviews the sorting problem, the parallel models of computation, parallel algorithms, and the lower bounds on the parallel sorting problems. The text also presents twenty different algorithms, such as linear arrays, mesh-connected computers, cube-connected computers. Another example where algorithm can be applied is on the shared-memory SIMD (single instruction stream multiple data stream) computers in which the whole sequence to be sorted can fit in the
Cited by 16
Vivek Kale, Edgar Solomonik · 2010
A large number of parallel applications contain a computationally intensive phase in which a large list of elements must be ordered based on some common attribute of the elements. How do we sort a sequence of elements on multiple processing units so as to minimize redistribution of keys while allowing processing units to do independent sorting work?
Cited by 10
Thomas Umland · Parallel Computing · 1994
Cited by 3
Vladimir Estivill Castro, Derick Wood · Dialnet (Universidad de la Rioja) · 1992
The capacity of an algorithm to modify its behavior to the size, difficulty or structure of the problem instance has been named adaptivity. The literature on parallel algorithms qualifies as adaptive those algorithms that work with a fixed amount of processors on input of arbitrary size while the literature on sorting algorithms qualifies as adaptive those algoritms that perform work proportional to the amount of disorder in the input. We combine these two concepts and present the first two parallel sorting algorithms that -are designed for a fixed number of processors and reconfigure according to the size of the input. - adapt to the amount of disorder in the input, and -are cost optimal.
Cited by 0
David Taniar, J. Wenny Rahayu · Information Sciences · 2002
Cited by 32
Ivan Carvalho · Open Collections · 2022
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 were limited to sequential implementations. We introduce the In-Place Parallel Learned Sort (IPLS) algorithm and compare it extensively against other sorting approaches. IPLS combines the IPS4o framework with linear models trained using the Fastest Minimum Conflict Degree algorithm to partition data. The experimental results do not crown IPLS as the fastest algorithm. However, they do show that IPLS is competitive among its peers and that using the IPS4o framework is a promising approach towards parallel learned sorting.
Cited by 0Open access
Timo Bingmann, Andreas Eberle, Peter Sanders · Algorithmica · 2015
Cited by 26
Sanguthevar Rajasekaran, Sandeep Sen · Acta Informatica · 1992
Cited by 28
Ms A, Hui Li, Hui Li et al. · 1994
A new approach to parallel sorting called Parallel Sorting by OverPartitioning (PSOP) is presented. The approach limits the communication cost by moving each element between processors at most once, and leads to good load balancing with high probability. The PSOP framework can be applied to both comparison and non-comparison sorts. Implementations on the KSR1 and Hector shared memory multiprocessors show that PSOP achieves nearly linear speedup and outperforms alternative approaches. An analytical model for PSOP has been developed that predicts the performance within 10% accuracy. Key Words: Parallel Sorting, Load Balance, Overpartitioning, Oversampling, COMA and NUMA Multiprocessors. 1 Introduction Sorting is an important symbolic application [4], and parallel algorithms for sorting have been studied intensively ever since Batcher [5] proposed the bitonic-sorting network. Although the theoretical community has devoted considerable effort to the design of parallel sorting algorithms ...
Cited by 0
Michael McKinsey · Texas Digital Library (University of Texas) · 2026
Performance analysis research of parallel sorting algorithms performance. Files are Caliper performance profiles (https://software.llnl.gov/Caliper/), which can be read with the performance analysis tool Thicket (see example https://github.com/LLNL/thicket-tutorial). Files are used for machine learning classification of the parallel sorting algorithm class using the performance data. Data used in "Parallel sorting algorithm classification: is manual instrumentation necessary?" McKinsey et al.
Cited by 0Open access
Dana Richards · Libra · 1986
Cited by 10Open access
William E. Devanny, Michael T. Goodrich, Kristopher Jetviroj · 2016
We study parallel comparison-based algorithms for finding all equivalence classes of a set of $n$ elements, where sorting according to some total order is not possible. Such scenarios arise, for example, in applications, such as in distributed computer security, where each of n agents are working to identify the private group to which they belong, with the only operation available to them being a zero-knowledge pairwise-comparison (which is sometimes called a "secret handshake") that reveals only whether two agents are in the same group or in different groups. We provide new parallel algorithms for this problem, as well as new lower bounds and distribution-based analysis.
Cited by 0
Michael Axtmann, Timo Bingmann, Peter Sanders et al. · Repository KITopen (Karlsruhe Institute of Technology) · 2014
Previous parallel sorting algorithms do not scale to the largest available machines, since they either have prohibitive communication volume or prohibitive critical path length. We describe algorithms that are a viable compromise and overcome this gap both in theory and practice. The algorithms are multi-level generalizations of the known algorithms sample sort and multiway mergesort. In particular our sample sort variant turns out to be very scalable. Some tools we develop may be of independent interest -- a simple, practical, and flexible sorting algorithm for small inputs working in logarithmic time, a near linear time optimal algorithm for solving a constrained bin packing problem, and an algorithm for data delivery, that guarantees a small number of message startups on each processor.
Cited by 0Open access
Michael T. Goodrich · SIAM Journal on Computing · 1999
We study the problem of sorting n numbers on a p-processor bulk-synchronous parallel (BSP) computer, which is a parallel multicomputer that allows for general processor-to-processor communication rounds provided each processor sends and receives at most h items in any round. We provide parallel sorting methods that use internal computation time that is $O({n\log n \over p})$ and a number of communication rounds that is $O({\log n \over \log (h+1)})$ for $h=\Theta(n/p)$. The internal computation bound is optimal for any comparison-based sorting algorithm. Moreover, the number of communication rounds is bounded by a constant for the (practical) situations when $p\le n^{1-{1/c}}$ for a constant $c\ge 1$. In fact, we show that our bound on the number of communication rounds is asymptotically optimal for the full range of values for p, for we show that just computing the "or"of n bits distributed evenly to the first O(n/h) of an arbitrary number of processors in a BSP computer requires $\Omega(\log n/\log (h+1))$ communication rounds.
Cited by 131
Roman Dementiev, Peter Sanders · 2003
We develop an algorithm for parallel disk sorting, whose I/O cost approaches the lower bound and that guarantees almost perfect overlap between I/O and computation. Previous algorithms have either suboptimal I/O volume or cannot guarantee that I/O and computations can always be overlapped. We give an efficient implementation that can (at least) compete with the best practical implementations but gives additional performance guarantees. For the experiments we have configured a state of the art machine that can sustain full bandwidth I/O with eight disks and is very cost effective.
Cited by 5
William Gasarch, Evan Golub, Clyde Kruskal · 2014
Cited by 0
McKinsey, Michael · Texas Digital Library (University of Texas) · 2024
Performance analysis research of parallel sorting algorithms performance. Files are Caliper performance profiles (https://software.llnl.gov/Caliper/), which can be read with the performance analysis tool Thicket (see example https://github.com/LLNL/thicket-tutorial). Files are used for machine learning classification of the parallel sorting algorithm class using the performance data. See example of how to analyze data (https://github.com/LLNL/thicket-tutorial/blob/develop/notebooks/08A_composing_parallel_sorting_data.ipynb).
Cited by 0Open access
Preparata · IEEE Transactions on Computers · 1978
In this paper, we describe a family of parallel-sorting algorithms for a multiprocessor system. These algorithms are enumeration sortings and comprise the following phases: 1) count acquisition: the keys are subdivided into subsets and for each key we determine the number of smaller keys (count) in every subset; 2) rank determination: the rank of a key is the sum of the previously obtained counts; 3) data rearrangement: each key is placed in the position specified by its rank. The basic novelty of the algorithms is the use of parallel merging to implement count acquisition. By using Valiant's merging scheme, we show that n keys can be sorted in parallel with n log2n processors in time C log <inf xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">2</inf> n + o(log <inf xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">2</inf> n); in addition, if memory fetch conflicts are not allowed, using a modified version of Batcher's merging algorithm to implement phase 1), we show that n keys can be sorted with n <sup xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">1 +α</sup> processors in time (C'/α a) log <inf xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">2</inf> n + o(log <inf xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">2</inf> n), thereby matching the performance of Hirschberg's algoithm, which, however, is not free of fetch conflicts.
Cited by 160Open access