Data-centric workloads with MPI_Sort

P. Zulian, S. Ben Bader, G. Fourestey, R. Krause, D. Rossinelli*

*Corresponding author for this work

Research output: Contribution to journalArticlepeer-review

Abstract

Sorting is a fundamental task in computing and plays a central role in information technology. The advent of rack-scale and warehouse-size data processing shaped the architecture of data analysis platforms towards supercomputing. In turn, established techniques on supercomputers have become relevant to a wider range of application domains. This work is concerned with multi-way mergesort with exact splitting on distributed memory architectures. At its core, our approach leverages a novel and parallel algorithm for multi-way selection problems. Remarkably concise, the algorithm relies on MPI_Allgather and MPI_ReduceScatter_block, two collective communication schemes that find hardware support in most high-end networks. A software implementation of our approach is used to process the Terabyte-size Data Challenge 2 signal, released by the SKA radio telescopes organization. On the supercomputer considered herein, our approach outperforms the state of the art by up to 2.6X using 9,216 cores. Our implementation is released as a compact open source library compliant to the MPI programming model. By supporting the most popular elementary key types, and arbitrary fixed-size value types, the library can be straightforwardly integrated into third-party MPI-based software.

Original languageEnglish (US)
Article number104833
JournalJournal of Parallel and Distributed Computing
Volume187
DOIs
StatePublished - May 2024

Keywords

  • Distributed sorting
  • Parallel algorithms
  • Supercomputers

ASJC Scopus subject areas

  • Software
  • Theoretical Computer Science
  • Hardware and Architecture
  • Computer Networks and Communications
  • Artificial Intelligence

Fingerprint

Dive into the research topics of 'Data-centric workloads with MPI_Sort'. Together they form a unique fingerprint.

Cite this