Javascript must be enabled to continue!
Performance Comparison of three Sorting Algorithms Using Shared Data and Concurrency Mechanisms in Java
View through CrossRef
Sorting large data sets or database is a problem commonly found in Computer Science and to find a solution to this problem, several quicksorting algorithms were developed while some need to be improved upon to make them more efficient. Sorting algorithms can be developed using both shared and non-shared data based on programmers’ choices. This paper aimed to develop three distinct sorting algorithms that involved shared data using three concurrency mechanisms in Java to measure their running times and to compare their performances. The main method used is the practical measurement of running times using benchmarking carried out on a machine with eight (8) processing cores. System current Time Millis () was used to measure time during the experiment. The results show that SD-Parallel quick sort implementation using Atomicity outperforms the other two algorithms. It was also shown that creating more threads leads to overhead when algorithms are developed using shared data. It was concluded that the running times of algorithms that involved shared data increase with the increase in the array size when proper synchronization is performed It was further revealed that SD-Parallel quick sort implemented using Acyclic-Barrier emerged as the second-best algorithm. Other concurrency mechanisms namely: Phaser, and Double-Atomicity provided by other Java JDK versions have the capacity of building more efficient framework that can be used to improve the performance of these algorithms due to their dynamic functionality. These and other concurrency mechanism provided by Java deserves further investigation as they are also capable of building more efficient algorithm.
Title: Performance Comparison of three Sorting Algorithms Using Shared Data and Concurrency Mechanisms in Java
Description:
Sorting large data sets or database is a problem commonly found in Computer Science and to find a solution to this problem, several quicksorting algorithms were developed while some need to be improved upon to make them more efficient.
Sorting algorithms can be developed using both shared and non-shared data based on programmers’ choices.
This paper aimed to develop three distinct sorting algorithms that involved shared data using three concurrency mechanisms in Java to measure their running times and to compare their performances.
The main method used is the practical measurement of running times using benchmarking carried out on a machine with eight (8) processing cores.
System current Time Millis () was used to measure time during the experiment.
The results show that SD-Parallel quick sort implementation using Atomicity outperforms the other two algorithms.
It was also shown that creating more threads leads to overhead when algorithms are developed using shared data.
It was concluded that the running times of algorithms that involved shared data increase with the increase in the array size when proper synchronization is performed It was further revealed that SD-Parallel quick sort implemented using Acyclic-Barrier emerged as the second-best algorithm.
Other concurrency mechanisms namely: Phaser, and Double-Atomicity provided by other Java JDK versions have the capacity of building more efficient framework that can be used to improve the performance of these algorithms due to their dynamic functionality.
These and other concurrency mechanism provided by Java deserves further investigation as they are also capable of building more efficient algorithm.
Related Results
DOMASCOS (DOMAin Specific COncurrency Skeletons)
DOMASCOS (DOMAin Specific COncurrency Skeletons)
Existing approaches to concurrent programming, albeit essential, are easily used incorrectly. Testing is difficult due to the inherent non-determinism introduced by concurrency, es...
THE GENUS Cnidoscolus Pohl (EUPHORBIACEAE) IN JAVA
THE GENUS Cnidoscolus Pohl (EUPHORBIACEAE) IN JAVA
AbstrakInformasi mengenai suku Euphorbiaceae di Pulau Jawa telah direkam dalam buku Flora of Java Volume 1 oleh C.A. Backer and R.C. Bakhuizen van den Brink Jr. Meskipun demikian, ...
Not that Concurrent!
Not that Concurrent!
Concurrency is, in the literature, often used as a noun with a range of strengths: there is more or less concurrency; it is more or less limited; it may even be seen described as c...
MARS-seq2.0: an experimental and analytical pipeline for indexed sorting combined with single-cell RNA sequencing v1
MARS-seq2.0: an experimental and analytical pipeline for indexed sorting combined with single-cell RNA sequencing v1
Human tissues comprise trillions of cells that populate a complex space of molecular phenotypes and functions and that vary in abundance by 4–9 orders of magnitude. Relying solely ...
Neural Networks for Quality Sorting of Agricultural Produce
Neural Networks for Quality Sorting of Agricultural Produce
The objectives of this project were to develop procedures and models, based on neural networks, for quality sorting of agricultural produce. Two research teams, one in Purdue Unive...
Adaptive Sorting of Fresh Produce
Adaptive Sorting of Fresh Produce
This project includes two main parts: Development of a “Selective Wavelength Imaging Sensor” and an “Adaptive Classifiery System” for adaptive imaging and sorting of agricultural p...
Justification of the geometric dimensions of drum sorting machine
Justification of the geometric dimensions of drum sorting machine
Abstract
This article presents the results of research to determine the basic geometric dimensions of a drum sorting machine designed for potato sorting. A critical ...
BejaGNN: Behavior-based Java Malware Detection via Graph Neural Network
BejaGNN: Behavior-based Java Malware Detection via Graph Neural Network
AbstractAs a popular platform-independent language, Java is widely used in enterprise applications. In the past few years, language vulnerabilities exploited by Java malware have b...

