Parallel merge sort: design a work-efficient parallel mergesort.
Analyze the parallel merge sort: design a work-efficient parallel mergesort..
Examples
Input: "test_input_1"
Output: "output_1"
Input: "test_input_2"
Output: "output_2"
Hints
Consider how the merge step in merge sort can be parallelized while maintaining work efficiency, focusing on dividing the merge task into smaller subproblems that can be processed concurrently.
Explore the use of a parallel divide-and-conquer approach where the sorting of subarrays is distributed across multiple threads, ensuring that the overhead of parallelization does not outweigh the benefits of concurrent execution.
Investigate the theoretical lower bounds for parallel merge sort, particularly the work and span complexities, and design an algorithm that achieves optimal or near-optimal parallelism while adhering to these bounds.
Parallel merge sort: design a work-efficient parallel mergesort.
Analyze the parallel merge sort: design a work-efficient parallel mergesort..