An application that generates and sorts an array of N integers, comparing different sorting algorithm performances.
Explore the docs »
Report Bug
·
Request Feature
Table of Contents
ParallelSort is a C# and WPF application developed as a school project that implements amongst other things a parallelized merge sort algorithm. The project aims to demonstrate how to improve sorting efficiency by leveraging parallel computing. The algorithm is designed to divide the data into smaller chunks that can be sorted concurrently using multi-threading techniques. This project was developed collaboratively with a classmate to explore the challenges and advantages of parallel algorithms in comparison to traditional sorting techniques.
The project also includes additional sorting algorithms such as selection sort, standard sort, and variants of Top-N sorting algorithms for comparison, some of which are implemented by the teachers as comparing. The UI and the measuring code is not mine, just the merge sort.
Follow these steps to get a local copy up and running.
- .NET 6.0 SDK or later
- Visual Studio 2022 or another IDE with WPF support
-
Clone the repo.
-
Open the solution in Visual Studio and build the project.
- Launch the application.
- Generate an unsorted array of numbers
- Compare results
- Optimize the parallel merge sort by tuning thread allocation and load balancing.
- Implement graphs or other statistical visualizations to compare performance across the different algorithms.
See the open issues for a full list of proposed features (and known issues).
Distributed under the Unlicence License. See LICENSE.txt for more information.
mavosy - [email protected]
Project Link: https://github.com/mavosy/ParallelSort
