Programming Parallel Computers 2020

Exercise SO: sorting


In this task, you will implement parallel sorting algorithms that outperform the single-threaded std::sort.


We will implement a benchmark tool so-test that performs the following steps:


The benchmark tool can be used as follows:

./so-test N

where N is the number of elements in the test data.


You can find a working implementation in your personal Git repository, in the subdirectories so*. You only need to implement the subroutine psort() in file so*/ See so*/so.h for the description of the interface.

Once you have implemented the function correctly, you should be able to run make -j to compile your code, ./grading test to check that it works correctly (at least for some test cases) and ./grading benchmark to see how well it performs.