Task Farm Computations in Java

  • M. Danelutto
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 1823)


We describe an experiment in the development of an efficient Java support for task farm computations. The support allows Java programmers to rapidly develop parallel task farm applications starting from the plain sequential code. The target architecture we considered during the development of the support is a cluster of Unix workstations. We show experimental results that demonstrate the feasibility of the approach and we discuss the performance of this Java task farm support used on a typical workstation cluster. The task farm support discussed here is the first step towards the implementation of a full skeleton based parallel programming environment in Java.


Task farm cluster computing skeletons load balancing 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    The Beowulf Project.
  2. 2.
    M. Aldinucci and M. Danelutto. Stream parallel skeleton optimisations, Proc. of the Eleventh IASTED International Conference Parallel and Distributed Computing and Systems, pages 955–962, November 1999. MIT Boston, USA.Google Scholar
  3. 3.
    P. Au, J. Darlington, M. Ghanem, Y. Guo, H.W. To, and J. Yang. Co-ordinating heterogeneous parallel computation. In L. Bouge, P. Fraigniaud, A. Mignotte, and Y. Robert, editors, Europar’ 96, pages 601–614. Springer-Verlag, 1996.Google Scholar
  4. 4.
    B. Bacci, M. Danelutto, S. Orlando, S. Pelagatti, and M. Vanneschi. P3L: A Structured High level programming language and its structured support. Concurrency Practice and Experience, 7(3):225–255, May 1995.CrossRefGoogle Scholar
  5. 5.
    M. Baker and R. Buyya. Cluster Computing at a Glance. In Rajkumar Buyya, editor, High Performance Cluster Computing, pages 3–47. Prentice Hall, 1999.Google Scholar
  6. 6.
    S. Benkner and H. Zima. Compiling High Performance Fortran for distributed memory architectures. Parallel Computing, 25(13–14):1785–1825, December 1999.CrossRefGoogle Scholar
  7. 7.
    George Horatiu Botorog and Herbert Kuchen. Efficient high-level parallel programming. Theoretical Computer Science, 196(1–2):71–107, April 1998.zbMATHCrossRefGoogle Scholar
  8. 8.
    B. O. Christiansen, P. Cappello, M. F. Ionescu, M. O. Neary, K. E. Schauser, and D. Wu. Javelin: Internet-based parallel computing using Java. Concurrency: Practice and Experience, 9(11):1139–1160, November 1997.CrossRefGoogle Scholar
  9. 9.
    M. Cole. Algorithmic Skeletons: Structured Management of Parallel Computations. Research Monographs in Parallel and Distributed Computing. Pitman, 1989.Google Scholar
  10. 10.
    M. Danelutto. Dynamic Run Time Support for Skeletons. In Proceedings of the PARCO’99 Conference, August 1999. Delft, The Netherlands.Google Scholar
  11. 11.
    High Performance FORTRAN Forum. High Performance FORTRAN Language Specification. Technical Report Rice University, Houston, TX, January 1997.Google Scholar
  12. 12.
    M. Gimbel, M. Philippsen, B. Haumacher, P. C. Lockemann, and W. F. Tichy. Java ad a Basis for Parallel Data Mining in Worlstation Clusters. In P. Sloot, M. Bubak, A. Hoekstra, and B. Hertzberger, editors, Proceedings of HPCN’99 Conference, pages 884–894. Springer Verlag, 1999. LNCS No. 1593.Google Scholar
  13. 13.
    D. C. Hyde. Java and Different Flavors of Parallel Programming Models. In Rajkumar Buyya, editor, High Performance Cluster Computing, pages 274–290. Prentice Hall, 1999.Google Scholar
  14. 14.
    P. Launay and J. L. Pazat. A Framework for Parallel Programming in Java. In P. Sloot, M. Bubak, and B. Hertzberger, editors, Proceedings of the HPCN’98 Conference, pages 628–637. Springer Verlag, LNCS, 1998.Google Scholar
  15. 15.
    M. Migliardi and V. Sunderam. Networking Performance for Metacomputing in Java. In Proc. of the IASTED International Conference on Parallel and Distributed Computing and Systems, pages 220–225, November 1999. MIT Boston, U.S.A.Google Scholar
  16. 16.
    P. S. Pacheco. Parallel Programming with MPI. Morgan Kaufmann, 1997.Google Scholar
  17. 17.
    S. Pelagatti. Structured Development of Parallel Programs. Taylor & Francis, 1998.Google Scholar
  18. 18.
    M. P. Pletzbert and R. K. Cytron. Does “Just in Time” = “Better Late than Never”. In Proceedings of the POPL’97: The 24th ACM SIGPLAN-SIGACT Symp. on Principles of Programming Languages, pages 120–131, 1997.Google Scholar
  19. 19.
    J. Serot, D. Ginhac, and J.P. Derutin. SKiPPER: A Skeleton-Based Parallel Programming Environment for Real-Time Image Processing Applications. In Proceedings of the 5th International Parallel Computing Technologies Conference (PaCT-99), September 1999.Google Scholar
  20. 20.
    L. M. Silva. Web-Based Parallel Computing with Java. In Rajkumar Buyya, editor, High Performance Cluster Computing, pages 310–326. Prentice Hall, 1999.Google Scholar
  21. 21.
    V. S. Sunderam and G. A. Geist. Heterogeneous parallel and distributed computing. Parallel Computing, 25(13–14):1699–1721, December 1999.CrossRefGoogle Scholar
  22. 22.
    M. Vanneschi. PQE2000: HPC tools for industrial applications. IEEE Concurrency, 6(4):68–73, 1998.CrossRefGoogle Scholar
  23. 23.
    B. Wilkinson and M. Allen. Parallel Programming. Techniques and Applications Using Networked Workstations and Parallel Computers. Prentice Hall, 1999.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2000

Authors and Affiliations

  • M. Danelutto
    • 1
  1. 1.Department of Computer ScienceUniversity of PisaItaly

Personalised recommendations