Distributed high performance computing using JAVA
Subarna Shakya, Ram Sharan Chaulagain, Santosh Kumar Pandey, Prakash Gyawali · 2017
This research paper is a study on trade-off of using Java to create cluster capable of achieving high-performance computing. Here we have made a distributed computing architecture in Java using Low-level API implementations. Time is crucial in any field of work. We value fast and optic results. Creating cluster base through traditional method using C, C++ or FORTAN programming language can be tedious, complex and time consuming. Distributed High Performance Computing using Java is a vision to achieve high computation performance using Low-level APIs and commodity software development strategy using Java. This paper exhibits the pros and cons of using Java for development of distributed high performance application. The developed architecture supports inter independent tasks parallelism and domain decomposition strategy has been used for partitioning task. The System is based on self-designed distributed architecture without use of any higher abstraction libraries but using low-level abstraction (Java sockets). The architecture performs the tasks of job division, handling task queue/result queue, scheduling the tasks and supervising the worker nodes. The salient features of our architecture are plug and play software framework, dynamic worker addition and fault tolerance in case of Node failure.