Description
This is a continuation of a previous assignment. I've attached the zip file from part 1
After evaluating the performance of a threaded version of a sort algorithm and a non-threaded version of a sort algorithm.
For this Assignment, you will extend your evaluation by examining the implementation with respect to concurrency control issues.
To prepare:
Evaluate the threaded implementation of the sort algorithm relative to data integrity and concurrency control.
Write a 2- to 3-page paper evaluating the implementation of the sort algorithm. Answer the following questions:
Is the threaded implementation correct, or are there data integrity concerns due to concurrency control?
If your implementation is correct, what protections are in place to ensure atomicity and consistency? Could a more effective method of ensuring data integrity be implemented in your solution?
If you ran into trouble with your implementation, provide specifics about the data integrity problems you encountered and explain the modifications that will be necessary to correct the data integrity and concurrency issues.
Include in your analysis an explanation of the operation of the threaded implementation, and if there are data integrity issues, suggest one or more modifications to the implementation to resolve these concerns.
Explanation & Answer
Hi, here is the final document. In case you have any rectifications that you would like made on the paper, feel free to reach out. I am here to help. Thanks buddy 😎
Running head:THREADING IN MERGE SORT
Threading in merge sort
Name
Institutional Affiliation
Course
Date of Submission
1
THREADING IN MERGE SORT
2
Merge sort is an algorithm that works through a divide-and-conquer mechanism, whereby
the input is continuously subdivided into two halves, sorted recursively, then ultimately merged.
For large inputs, the process can take more time, and this warrants some form of parallel
execution. In Java, the concurrency is normally implemented through multithreading. Data
integrity is the aspect of ensuring that data values in a data set remain accurate and consistent
through the program execution. In the code, the threaded implementation of the sort algorithm is
implemented correctly with respect to data integrity and concurrency control. After running the
program, all the received outputs indicate that the data from the threaded implementation is
correctly sorted and uniform. As per the code implementation, if the data would have presented
inconsistencies at any specific point in the sorting process, the program should throw an error
that the data returned by the threaded sort is either missing or not sorted. Since this does not
happen in the multiple test cases run, this signifies that the integrity of the data is properly
maintained.
Furthermore, the concurrency control in the threaded implementation ascertains that the
algorithm is executed within the shortest time possible whilst giving steady results. The threaded
sort in the code is implemented with an acknowledgment of the �...