parallel sorting

Parallel sorts for Cilk Plus

This article describes the parallel sorts in the latest release of “Cilkpub”, an open-source library of utilities for Intel® Cilk™ Plus. 

  • cilk_sort
  • cilk_sort_in_place

They are designed to be replacements for std::sort that may provide speedup when sorting many items (on the order of at least 10000). For example:

extern float a[];
cilkpub::cilk_sort( a, a+n );
  • Developers
  • Professors
  • Students
  • C/C++
  • Intermediate
  • Intel® Cilk™ Plus
  • Cilk Plus
  • parallel sorting
  • Parallel Computing
  • Observations from Parallel Sorting Part I: the subtleties of tbb::parallel_reduce

    In this series of postings, I discuss two common sorting algorithms, mergesort and quicksort, and highlight some of the interesting issues that arise when creating parallel implementations using TBB.  In all cases we’ll assume that, like STL’s std::sort, the input to the sort is a pair of RandomAccessIterators begin and end that denote the beginning and ending of the collection to be sorted, and a comparator object compare that provides an operator() for ordering two given elements.

    Subscribe to parallel sorting