Date of Award
5-2016
Culminating Project Type
Starred Paper
Degree Name
Computer Science: M.S.
Department
Computer Science and Information Technology
College
School of Science and Engineering
First Advisor
Donald O. Hamnes
Second Advisor
Jie Hu Meichsner
Third Advisor
Dennis C. Guster
Creative Commons License
This work is licensed under a Creative Commons Attribution-Noncommercial-No Derivative Works 4.0 License.
Keywords and Subject Headings
Parallel Computing Java C Performance Shared Memory Distributed Memory Cluster MPJ Express Open MPI
Abstract
The Java programming language and environment is inspiring new research activities in many areas of computing, of which parallel computing is one of the major interests. Parallel techniques are themselves finding new uses in cluster computing systems. Although there are excellent software tools for scheduling, monitoring and message-based programming on parallel clusters, these systems are not yet well integrated and do not provide very high-level parallel programming support.
This research presents a number of issues which are considered to be key to the suitability of Java for HPC (High Performance Computing) applications and then explore the support for concurrency in the current Java 1.8 specification. We further present various relatively recent parallel Java models which support HPC for both shared and distributed memory programming paradigms. Finally, we attempt to evaluate the performance of discussed Java HPC models by comparing the same with the relative traditional native C implementations, where appropriate. The analysis of the results suggest that Java can achieve near similar performance to natively compiled languages, both for sequential and parallel applications, thus making it a viable alternative for HPC programming.
Recommended Citation
Ali, Muqeet Mohammed, "Parallel Computing in Java" (2016). Culminating Projects in Computer Science and Information Technology. 9.
https://repository.stcloudstate.edu/csit_etds/9
Comments/Acknowledgements
I would like to take this opportunity to thank Dr. Donald O. Hamnes and my committee members Dr. Dennis C. Guster and Dr. Jie Hu Meichsner for their time and cooperation, which led to the successful completion of my starred paper. I would also like to extend my thanks to Dr. Ramnath Sarnath for his support throughout my masters program, and the Department of Computer Science, SCSU, for their help in providing the necessary resources.
I am also grateful to my friends (Wajahat Ali, Shoeb Uddin Mohammed, Mukhtar Mohammed, Younus Raza, Zubair Mohammed, Yousuf Mohammed, Hatim Mohammed, Abubucker Siddiqui) for their support and motivation during my initial days of the masters program.
I wish to thank my siblings Mukarram Ali Mohammed and Ruqia Maihveen for the continuous encouragement, support, love, and care they provided throughout my life. Am also thankful to my fiancé Sumiah Fatima, without whose understanding and motivation this research wouldn’t have been completed.
Lastly, I would like to express my deepest gratitude to my parents, Ahmed Ali Mohammed and Bilquees Begum. Their love, care and motivation at every step of my life defined the person I am today. They inspire me every day and were the strength that brought my Master’s journey to its culmination and to them I dedicate this paper.