Normally Merge sort is Sequential and single threaded which takes O(nlogn) time with O(n) extra space during merging. The idea to convert create a AbstractSort class which will be extended to Parallel or Serial Merge Sort. Based on number of items you have any list you pick one or the other. Parallel Merge sort also take a threshold value, below of which it will perform same a serial sort.
git clone https://github.com/deyindra/MergeSort.git
mvn clean install
Please run the TestBenchMark to get the bench mark results between Parallel and Serial Merge sort. This is automatically run when somebody will be executing mvn clean install. Please open benchmark-lists.html in order to compare the results. This will sort 3 million random integers. Bench mark test will run 20 rounds for each sorting.