Advertisement

Cluster Computing

, Volume 3, Issue 2, pp 83–94 | Cite as

Delta Execution: A preemptive Java thread migration mechanism

  • Matchy J.M. Ma
  • Cho-Li Wang
  • Francis C.M. Lau
Article

Abstract

Delta Execution is a preemptive and transparent thread migration mechanism for supporting load distribution and balancing in a cluster of workstations. The design of Delta Execution allows the execution system to migrate threads of a Java application to different nodes of a cluster so as to achieve parallel execution. The approach is to break down and group the execution context of a migrating thread into sets of consecutive machine-dependent and machine-independent execution sub-contexts. Each set of machine-independent sub-contexts, also known as a delta set, is then migrated to a remote node in a regulated manner for continuing the execution. Since Delta Execution is implemented at the virtual machine level, all the migration-related activities are conducted transparently with respect to the applications. No new migration-related instructions need to be added to the programs and existing applications can immediately benefit from the parallel execution capability of Delta Execution without any code modification. Furthermore, because the Delta Execution approach identifies and migrates only the machine-independent part of a thread's execution context, the implementation is therefore reasonably manageable and the resulting software is portable.

Keywords

Virtual Machine Program Counter Work Node Java Application Main Thread 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. [1]
    C. Amza, A.L. Cox, S. Dwarkadas, P. Keleher, H. Lu, R. Rajamony, W. Yu and W. Zwaenepoel, TreadMarks: Shared memory computing on networks of workstations, IEEE Computer 29(2) (February 1996) 18–28.Google Scholar
  2. [2]
    A. Barak and O. Laden, The MOSIX multicomputer operating systemfor high performance cluster computing, Journal of Future Generation Computer Systems 13(4-5) (March 1998) 361–372.CrossRefGoogle Scholar
  3. [3]
    A. Barak, O. Laden and Y. Yarom, The NOW MOSIX and its preemptive process migration scheme, Bulletin of the IEEE Technical Committee on Operating Systems and Application Environments 7(2) (1995) 5–11.Google Scholar
  4. [4]
    S. Bouchenak, Pickling threads state in the Java system, in: Proc. of 3rd European Research Seminar on Advances in Distributed Systems (ERSADS) (April 1999).Google Scholar
  5. [5]
    B. Cheung, C.L. Wang and K. Hwang, A migration-home protocol for implementing scope consistency model on a cluster of workstations, in: Proc. of 1999 International Conference on Parallel and Distributed Processing Techniques and Applications (PDPTA) (June 1999).Google Scholar
  6. [6]
    B. Dimitrov and V. Rego, Arachne: A portable threads system supporting migrant threads on heterogeneous network farms, IEEE Transactions on Parallel and Distributed Systems 9(5) (May 1998) 459–469.CrossRefGoogle Scholar
  7. [7]
    F. Douglis and J. Ousterhout, Transparent process migration: Design alternatives and the sprite implementation, Software Practice and Experience 21(8) (August 1991).Google Scholar
  8. [8]
    C.M. Lee, A. Tam and C.L. Wang, Direct-point: An efficient communication subsystem for cluster computing, in: Proc. of 1998 International Conference on Parallel and Distributed Computing Systems (IASTED) (October 1998).Google Scholar
  9. [9]
    M.J.M. Ma, JESSICA: Java-Enabled Single-System-Image Computing Architecture, M.Phil. thesis, Department of Computer Science and Information System, The University of Hong Kong (February 1999).Google Scholar
  10. [10]
    M.J.M. Ma, C.L. Wang, F.C.M. Lau and Z. Xu, JESSICA: Javaenabled single-system-image computing architecture, in: Proc. of 1999 International Conference on Parallel and Distributed Processing Techniques and Applications (PDPTA) (June 1999).Google Scholar
  11. [11]
    Transvirtual Technologies Inc., Kaffe Open VM, http://www.transvirtual.comGoogle Scholar
  12. [12]
    W. Yu and A.L. Cox, Java/DSM: A platform for heterogeneous computing, in: Proc. of ACM 1997 Workshop on Java for Science and Engineering Computation (June 1997).Google Scholar

Copyright information

© Kluwer Academic Publishers 2000

Authors and Affiliations

  • Matchy J.M. Ma
  • Cho-Li Wang
  • Francis C.M. Lau

There are no affiliations available

Personalised recommendations