Zusammenfassung
Während Java Threads (Aktivitätsstränge) als geeignetes Sprachmittel für die Programmierung von SMPs (Parallelrechnern mit gemeinsamem Speicher) anbietet, fehlen elegante und ausreichende Sprachmittel für die Programmierung von Parallelrechnern mit verteiltem Speicher (DMPs), also auch für Cluster von Arbeitsplatzrechnern. Die in der Java-Distribution angebotene explizite Socket-Kommunikation und der Aufruf entfernter Methoden (RMI) erfordern bei der Portierung eines für eine SMP-Maschine entwickelten mehrsträngigen Programms auf eine DMP-Maschine erhebliche Programmänderungen und -erweiterungen.
JavaParty behebt diesen Mißstand, ermöglicht ein Java-artiges Programmieren auch von DMPs und Clustern von Arbeitsplatzrechnern und verallgemeinert die Idee des plattformunabhängigen Codes auch für Parallelrechner unterschiedlicher Architekturen. Die Erweiterung beruht auf einem neuen, die Klassendeklaration ergänzenden, Klassenmodifikator remote, mit dem potentiell entfernt zu realisierende Objekte für den JavaParty-Übersetzer gekennzeichnet werden. Aus dem Attribut wird dann portabler Java-Code sowohl für SMPs als auch DMPs erzeugt, ohne den Programmierer der Komplexität von expliziter Socket-Kommunikation bzw. RMI auszusetzen.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Literatur
T.E. Anderson, D.E. Culler, D.A. Patterson. A Case for NOW (Network of Workstations). IEEE Micro, 15(l):54–64, February 1995.
N.J. Boden, D. Cohen, R.E. Felderman, A.E. Kulawik, C.L. Seitz, J.N. Seizovic, W.-K. Su. Myrinet: A Gigabit-per-Second Local Area Network. IEEE Micro, 15(l):29–36, February 1995.
J. Clearbout, B. Biondi. Geophysics in object-oriented numerics (GOON): Informal conference. In Stanford Exploration Project Report No. 93. October 1996. http://sepwww.stanford.edu/sep
J.T. Feo, editor. A Comparative Study of Parallel Programming Languages: The Salishan Problems. Elsevier Science Publishers, Holland, 1992.
E. Gamma, R. Helm, R. Johnson, J. Vlissides. Design Patterns - Elements of Reusable Object-Oriented Software. Addison-Wesley, 1994.
J. Gosling, B. Joy, G. Steele. The Java Language Specification. Addison-Wesley, 1996.
J. Gosling, F. Yellin, The Java Team. The Java Application Programming Interface, volume 1 - Core Packages. Addison-Wesley, 1996.
S. Hirano. Horb: net computinghttp://ring.etl.go 1996.
S. Flynn Hummel, T. Ngo, H. Srinivasan. SPMD programming in Java. Concurrency: Practice and Experience, 9(6):621–631, June 1997.
IBM. High performance compiler for Java. http://www.alphaWorks.ibm.com.
M. Jacob. Implementing Large-Scale Geophysical Algorithms with Java: A Feasibility Study. Master’s thesis, University of Karlsruhe, Dept. of Informatics, 1997.
E. Jul, H. Levy, N. Hutchinson, A. Black. Fine-grained mobility in the Emerald system. ACM Transactions on Computer Systems, 6(1).109–133, February 1988.
L. V. Kalé, M. Bhandarkar, T. Wilmarth. Design and implementation of parallel Java with global object space. In Proc. of Conf. on Distributed Processing Technology and Applications, Las Vegas, Nevada, 1997.
. Keleher, A. L. Cox, W. Zwaenepoel. Treadmarks: Distributed shared memory on standard workstations and operating systems. In Proc. 1994 Winter Usenix Conf., pages 115–131, January 1994.
P. Launay, J.-L. Pazat. Integration of control and data parallelism in an object oriented language. In Proc. of 6th Workshop on Compilers for Parallel Computers (CPC’96), Aachen, Germany, December 11–13, 1996.
D. Lea. Concurrent Programming in Java - Design Principles and Patterns. Addison-Wesley, 1996.
S. Matsuoka, A. Yonezawa. Analysis of inheritance anomaly in object-oriented concurrent programming languages. In G. Agha, P. Wegner, A. Yonezawa, editors, Research Directions in Concurrent Object-Oriented Programming, pages 107–150. MIT Press, 1993.
N. Nagaratnam, A. Srinivasan. Remote objects in Java. In IASTED Intl. Conf. on Networks, January 1996.
M. Odersky, M. Philippsen. Espresso, http://wwwipd.ira.uka.de/ espresso, 1996.
M. Philippsen. Imperative concurrent object-oriented languages. Technical Report 95–050, International Computer Science Institute, Berkeley, August 1995.
M. Philippsen. Data parallelism in Java. In J. Schaefer, editor, High Performance Computing Systems and Applications. Kluwer Academic Publishers, 1998. to appear.
M. Philippsen, M. Jacob, M. Karrenbach. Fallstudie: Parallele Realisierung geophysikalischer Basisalgorithmen in Java. Informatik—Forschung und Entwicklung, 13(2):72–78, 1998.
DFG Forschergruppe RESH - Rechnernetze als Basis für Supercomputer und Hochleistungsdatenbanken. http://wwwipd.ira.uka.de/RESH
Sun Microsystems Inc., Mountain View, CA. Java Remote Method Invocation Specification, beta draft, 1996.
T.M. Warschko, J.M. Blum, W.F. Tichy. The ParaStation Project: Using Workstations as Building Blocks for Parallel Computing. In Intl. Conf. on Parallel and Distributed Processing, Techniques and Applications (PDPTA’96), pages 375–386, Sunnyvale, CA, August 9–11, 1996.
W. Yu, A. Cox. Java/DSM: A platform for heterogeneous computing. Concurrency: Practice and Experience, 9(11):1213–1224, November 1997.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 1999 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Philippsen, M., Zenger, M., Jacob, M. (1999). JavaParty — portables paralleles und verteiltes Programmieren in Java. In: Cap, C.H. (eds) JIT’98 Java-Informations-Tage 1998. Informatik aktuell. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-59984-2_3
Download citation
DOI: https://doi.org/10.1007/978-3-642-59984-2_3
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-64971-7
Online ISBN: 978-3-642-59984-2
eBook Packages: Springer Book Archive