An analytical model for source code distributability verification
- 7 February 2014
- journal article
- Published by Zhejiang University Press in Journal of Zhejiang University SCIENCE C
- Vol. 15 (2) , 126-138
Abstract
One way to speed up the execution of sequential programs is to divide them into concurrent segments and execute such segments in a parallel manner over a distributed computing environment. We argue that the execution speedup primarily depends on the concurrency degree between the identified segments as well as communication overhead between the segments. To guarantee the best speedup, we have to obtain the maximum possible concurrency degree between the identified segments, taking communication overhead into consideration. Existing code distributor and multi-threading approaches do not fulfill such requirements; hence, they cannot provide expected distributability gains in advance. To overcome such limitations, we propose a novel approach for verifying the distributability of sequential object-oriented programs. The proposed approach enables users to see the maximum speedup gains before the actual distributability implementations, as it computes an objective function which is used to measure different distribution values from the same program, taking into consideration both remote and sequential calls. Experimental results showed that the proposed approach successfully determines the distributability of different real-life software applications compared with their real-life sequential and distributed implementations.Keywords
This publication has 20 references indexed in Scilit:
- Automatic actor-based program partitioningJournal of Zhejiang University SCIENCE C, 2009
- Analysis of Ten Reverse Engineering Tools2009
- Market‐Oriented Grid and Utility Computing2009
- Towards Autonomic Distribution of Existing Object Oriented Programs2006
- A Time Predictable Java Processor2006
- New Grid Scheduling and Rescheduling Methods in the GrADS ProjectInternational Journal of Parallel Programming, 2005
- JOPI: a Java object‐passing interfaceConcurrency and Computation: Practice and Experience, 2005
- PBS Pro: Grid Computing and Scheduling Attributes2004
- Adaptive computing on the grid using AppLeSIEEE Transactions on Parallel and Distributed Systems, 2003
- Sun Grid Engine: towards creating a compute power grid2002