Bernhard Haumacher, Michael Philippsen Universität Karlsruhe Institut für Programmstrukturen www.javagrande.org.

Slides:



Advertisements
Ähnliche Präsentationen
Ziele von EINI I + II Einführen in „Informatik“
Advertisements

Fast Fourier Transformation
Matrixmultiplikation
Mathematik hat Geschichte
Vorlesung: 1 Betriebliche Informationssysteme 2003 Prof. Dr. G. Hellberg Studiengang Informatik FHDW Vorlesung: Betriebliche Informationssysteme Teil3.
LS 2 / Informatik Datenstrukturen, Algorithmen und Programmierung 2 (DAP2)
Vorteile der Online-Produkte
Telefonnummer.
CPCP Institute of Clinical Pharmacology AGAH Annual Meeting, 29. Februar 2004, Berlin, Praktischer Umgang mit den Genehmigungsanträgen gemäß 12. AMG Novelle.
Modelle und Methoden der Linearen und Nichtlinearen Optimierung (Ausgewählte Methoden und Fallstudien) U N I V E R S I T Ä T H A M B U R G November 2011.
Modelle und Methoden der Linearen und Nichtlinearen Optimierung (Ausgewählte Methoden und Fallstudien) U N I V E R S I T Ä T H A M B U R G November 2011.
Datenbankzugriff im WWW (Kommerzielle Systeme)
1 JIM-Studie 2010 Jugend, Information, (Multi-)Media Landesanstalt für Kommunikation Baden-Württemberg (LFK) Landeszentrale für Medien und Kommunikation.
NATURAL Web-Integration 1 / 27/28-Feb-98 TST NATURAL Web-Integration Arbeitskreis NATURAL Süd Theo Straeten SAG Systemhaus GmbH Technologieberater Stuttgart.
Stefanie Selzer - Pascal Busch - Michael Kropiwoda
Der Einstieg in das Programmieren
Scratch Der Einstieg in das Programmieren. Scatch: Entwicklungsumgebung Prof. Dr. Haftendorn, Leuphana Universität Lüneburg,
Java: Objektorientierte Programmierung
Java: Grundlagen der Sprache
WS Algorithmentheorie 02 - Polynomprodukt und Fast Fourier Transformation Prof. Dr. Th. Ottmann.
Grundkurs Theoretische Informatik, Folie 2.1 © 2006 G. Vossen,K.-U. Witt Grundkurs Theoretische Informatik Kapitel 2 Gottfried Vossen Kurt-Ulrich Witt.
Vorlesung: 1 Betriebssysteme 2007 Prof. Dr. G. Hellberg Studiengang Informatik FHDW Vorlesung: Betriebssysteme Hochverfügbarkeit (Einführung) 3. Quartal.
Vorlesung: 1 Betriebliche Informationssysteme 2003 Prof. Dr. G. Hellberg Studiengang Informatik FHDW Vorlesung: Betriebliche Informationssysteme Teil2.
Diskrete Mathematik I Vorlesung Arrays-
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Diskrete Mathematik I Vorlesung Listen-
PKJ 2005/1 Stefan Dissmann Rückblick auf 2005 Was zuletzt in 2005 vorgestellt wurde: Klassen mit Attributen, Methoden und Konstruktoren Referenzen auf.
PKJ 2005/1 Stefan Dissmann Zusammenfassung Bisher im Kurs erarbeitete Konzepte(1): Umgang mit einfachen Datentypen Umgang mit Feldern Umgang mit Referenzen.
Betreuerin: Kathleen Jerchel
XML in Client-Server und GRID Architektur
JAVA RMI.
Prof. Dr. Bernhard Wasmayr
Schieferdeckarten Dach.ppt
Prof. Dr. Bernhard Wasmayr VWL 2. Semester
Rechneraufbau & Rechnerstrukturen, Folie 12.1 © W. Oberschelp, G. Vossen W. Oberschelp G. Vossen Kapitel 12.
Distanzbasierte Sprachkommunikation für Peer-to-Peer-Spiele
2 Distanzbasierte Sprachkommunikation für Peer-to-Peer-Spiele.
1. 2 Schreibprojekt Zeitung 3 Überblick 1. Vorstellung ComputerLernWerkstatt 2. Schreibprojekt: Zeitung 2.1 Konzeption des Kurses 2.2 Projektverlauf.
Bild 1.1 Copyright © Alfred Mertins | Signaltheorie, 2. Auflage Vieweg+Teubner PLUS Zusatzmaterialien Vieweg+Teubner Verlag | Wiesbaden.
20:00.
Internet: Funktionsweise und Dienste
TWS/Graph HORIZONT Produkt-Präsentation Software für Rechenzentren
1 Alexander Arimond, University of Kaiserslautern, Germany Entwicklung und Evaluation eines Raytracing-Dienstes für das Venice Service Grid Alexander Arimond.
...ich seh´es kommen !.
Polynome und schnelle Fourier-Transformation
Präsentation läuft auch vollautomatisch ab … wie du möchtest
Auslegung eines Vorschubantriebes
Analyse von Ablaufdiagrammen
Ertragsteuern, 5. Auflage Christiana Djanani, Gernot Brähler, Christian Lösel, Andreas Krenzin © UVK Verlagsgesellschaft mbH, Konstanz und München 2012.
Symmetrische Blockchiffren DES – der Data Encryption Standard
Managemententscheidungsunterstützungssysteme (Ausgewählte Methoden und Fallstudien) ( Die Thesen zur Vorlesung 3) Thema der Vorlesung Lösung der linearen.
Zahlentheorie und Zahlenspiele Hartmut Menzer, Ingo Althöfer ISBN: © 2014 Oldenbourg Wissenschaftsverlag GmbH Abbildungsübersicht / List.
MINDREADER Ein magisch - interaktives Erlebnis mit ENZO PAOLO
1 (C)2006, Hermann Knoll, HTW Chur, FHO Quadratische Reste Definitionen: Quadratischer Rest Quadratwurzel Anwendungen.
Analyseprodukte numerischer Modelle
2014 Januar 2014 So Mo Di Mi Do Fr Sa So
Schutzvermerk nach DIN 34 beachten 20/05/14 Seite 1 Grundlagen XSoft Lösung :Logische Grundschaltung IEC-Grundlagen und logische Verknüpfungen.
1 Mathematical Programming Nichtlineare Programmierung.
Parallele Programmierung in Java
Ertragsteuern, 5. Auflage Christiana Djanani, Gernot Brähler, Christian Lösel, Andreas Krenzin © UVK Verlagsgesellschaft mbH, Konstanz und München 2012.
SiLeBAT Sicherstellung der Futter- und Lebensmittelwarenkette bei bio- und agro-terroristischen (BAT)-Schadenslagen.
Der Erotik Kalender 2005.
Bildergalerie PRESEASON CAMP Juni 2014 Romanshorn Get ready for the Season!
prof. dr. dieter steinmannfachhochschule trier © prof. dr. dieter steinmann Folie 1 vom Montag, 30. März 2015.
Datum:17. Dezember 2014 Thema:IFRS Update zum Jahresende – die Neuerungen im Überblick Referent:Eberhard Grötzner, EMA ® Anlass:12. Arbeitskreis Internationale.
1 10 pt 15 pt 20 pt 25 pt 5 pt 10 pt 15 pt 20 pt 25 pt 5 pt 10 pt 15 pt 20 pt 25 pt 5 pt 10 pt 15 pt 20 pt 25 pt 5 pt 10 pt 15 pt 20 pt 25 pt 5 pt Wie.
Das IT - Informationssystem
1 Medienpädagogischer Forschungsverbund Südwest KIM-Studie 2014 Landesanstalt für Kommunikation Baden-Württemberg (LFK) Landeszentrale für Medien und Kommunikation.
Monatsbericht Ausgleichsenergiemarkt Gas – Oktober
Monatsbericht Ausgleichsenergiemarkt Gas – November
 Präsentation transkript:

Bernhard Haumacher, Michael Philippsen Universität Karlsruhe Institut für Programmstrukturen

2 Überblick Grande-Anwendungen Das JavaGrande Forum Diskutierte Probleme Lösungsansätze in den Bereichen –Numerik –verteiltes paralleles Rechnen Grande-Anwendung, was nun?

3 Grande Anwendungen...angesiedelt im wissenschaftlichen, ingeneurmäßigen oder kommerziellen Rechnen...bei Modellbildung, Simulation und Datenauswertung...sind komplex, rechen-, daten- und/oder Ein-/Ausgabe-intensiv

4 Benötigen... 4höchste Leistung 4Parallelität 4verteiltes Rechnen In der Java-Gemeinde bisher nur geringer Nutzeranteil Grande Anwendungen

5 Java Grande Forum (JGF) 4 Gegründet: März Offenes Forum: Industrie, US- Regierung, universitäre Beteiligung Academic Coordinator: Geoffrey C. Fox (Syracuse) Secretary: George Thiruvathukal (Chicago) Industry Coordinator: Siamak Hassenzadeh (Sun)

6 Java Grande Forum (JGF) 4 Workshops & Konferenzen –Syracuse Dezember 96 –PLDI Las Vegas Juni 97 –Palo Alto Februar 98 –EuroPar Southampton September 98 –HPCN Amsterdam April 99 –IPPS San Juan April 99 –ACM JavaGrande Konferenz Juni –JavaOne Juni 99 –ICS99 Rhodos Juni 99

7 Java Grande Forum (JGF) Besteht aus zwei Arbeitsgruppen 4Numerics Working Group Ron Boisvert Roldan Pozo (NIST) 4Distributed Computing Working Group Dennis Gannon (Indiana) Denis Caromel (INRIA)

8 Ziele von Java Grande 4 Schwächen von Sprache und Laufzeitumgebung für Grande- Anwendungen aufzeigen 4 Bedarf gegenüber Sun bündeln 4 Java für Grande-Anwendungen verwendbar machen (Außenwirkung) 4 Standardisierung von Schnittstellen und Bibliotheken für Grande-Anwendungen (JGF intern)

9 Warum Grande mit Java? 4 Infrastruktur für verteiltes Rechnen 4 Sprachdesign (oo, GC, multi-threaded,...) 4 Portabilität: Java Virtual Machine 4 Reicher Fundus an Bibliotheken 4 Integrierte Entwicklungsumgebungen 4 Breite Akzeptanz 4 Java wird gelehrt und gelernt

10 Überall Java in Grande? 4 Benutzerschnittstelle (Applet) –graphische Datenaufbereitung 4 Bindeglied zwischen Berechnung, Ablaufsteuerung, Datenbank und Ausgabe (Mittlere Schicht) 4 Sprache für die parallele & verteilte Programmierung im Cluster (Hochleistungs-Backend)

11 Probleme mit Java & Grande 4 Java nicht für Grande-Anwendungen entworfen –verlangt ist Geschwindigkeit & Portabilität –keine Sprachunterstützung für numerisches Rechnen 4 Keine numerischen Bibliotheken –Henne & Ei Problem

12 Numerics Working Group 4 Effiziente komplexwertige Arithmetik 4 Effiziente mehrdimensionale Felder 4 Leichtgewichtige Klassen 4 Operator - Überladung 4 Java-Fließkomma-Arithmetik 4 Mathematische Bibliotheken –FFT, lineare Algebra,...

13 Numerics Working Group John Brophy, Visual Numerics Sid Chatterjee, University of North Carolina David S. Dixon, Mantos Consulting Steve Hague, NAG Lennart Johnsson, University of Houston William Kahan, University of California, Berkeley Cleve Moler, The MathWorks Jose Moreira, IBM Kees van Reevwijk, Technical University, Delft Keith Seymour, University of Tennessee Nik Shaylor, Sun Marc Snir, IBM

14 Komplexwertige Arithmetik 4 Forderungen … –so effizient und bequem wie float und double 4 Komplex als normale Klasse liefert –inakzeptablen Objekt-Mehraufwand –falsche Semantik von = und == –undurchschaubare Methodenaufrufe der Form a.assign(b.times(c).plus(d))

15 Komplexwertige Arithmetik 4 IBM-Ansatz –Klasse Complex –Nativer Übersetzer –Spezialfall im Übersetzer fest verdrahtet Einbetten keine Heap-Allokation kein Objekt-Mehraufwand –

16 Komplexwertige Arithmetik 4 CJ: Complex Numbers in Java –Uni Karlsruhe –Neuer Basistyp complex –mit allen Operatoren + - * /... –Übersetzung durch Präprozessor Auflösen von complex in zwei double Transformation der Operatoren nach Java –reine Java-Lösung –

17 Mehrdimensionale Felder 4 Forderungen … –Übersetzer-optimierbarer Feldzugriff –Keine Bereichstests zur Laufzeit –Verläßliche Feldanordnung Auswahl des besten Algorithmus 4 Probleme bei mehrdim. Java-Feldern –zerstückelt mit Zeilen-Aliasen –Klasse zur Kapselung verursacht unlesbaren und ineffizienten Code

18 Mehrdimensionale Felder 4 IBM –Klassen für 0D-, 1D-, 2D- und 3D- Matrizen –native Übersetzung – –

19 Eine allgemeinere Lösung 4 Leichgewichtige Klassen –eingeschränkte Klassen mit Wertsemantik –wenig Mehraufwand –können eingebettet werden 4 Operator-Überladung –wenigstens für existierende Operatoren: Arithmetik, Vergleich, Zuweisung, Indizierung

20 Fließkomma-Arithmetik 4 Forderungen... –immer akzeptable Geschwindigkeit –nur bei Bedarf: Hochgeschwindigkeit plattformübergreifend reproduzierbare Ergebnisse –Zugriff auf IEEE-Merkmale

21 Fließkomma-Arithmetik Ist-Zustand / Probleme –run anywhere, get the same answers everywhere –keine Ausnutzung proprietäter Fließkomma-Hardware 80-bit Register auf x x langsamer –fused multiply-add verboten –gängige Übersetzer-Optimierungen verboten (z.B. Assoziativität ausnutzen)

22 Sun: Fließkomma-Vorschlag Lange diskutiert, erste Reaktion: 4 widefp (standard) –gleichberechtigte Verwendung von float- und double-extended –kein FMA –eingeschränkte HW-Unterstützung 4 strictfp –bisherige Konventionen

23 JGF: Fließkomma-Vorschlag Einführung von 3 Modi –standard 15-bit Exponent, fused multiply-add –strictfp bisherige Konventionen –associativefp Assoziativität ausnutzen,... mehr ?

24 IBM Fließkomma-Ergebnisse

25 Weitere FP-Vorhaben 4 reproduzierbare mathematische Funktionen –Java-Version von fdlibm für strictfp 4 Standard zur Beeinflussung von –IEEE Fließkomma-Flags –IEEE Rundungsmodi 4 Implementation von IEEE-Funktionen

26 4 Komplexe Zahlen (IBM, VNI) 4 Mehrdimensionale Felder (IBM) 4 Lineare Algebra (MathWorks & NIST) 4 In Arbeit –Intervalle –FFT –multiprecission Klassen-Bibliotheken

27 4 Java Benchmark-Applet für Numerik 4 kombinierte Ergebnisse aus –FFT (komplex) –Gauss-Seidel Relaxation –Monte Carlo Integration von e -x 2 –Multiplikation dünnbesetzter Matrizen –LU-Faktorisierung dichter Matrizen mit Pivotisierung 4 normalisiert: SPARC 10, Netscape 4.04 SciMark Benchmark

28 Distributed Computing W.G. 4 schnelles RMI 4 JavaParty - Transparente entfernte Objekte in Java 4 MPI für Java 4 Benchmark Initiative – 4 Seamless Computing Standards

29 Distributed Computing W.G. George Crawford, MPI Software Technology Vladimir Getov, University of Westminster, UK Piyush Mehrotra, ICASE Michael Philippsen, University of Karlsruhe, Germany Omer Rana, University of Wales, Cardiff, UK Tony Skjellum. MPI Software Technology Henry Sowizral, Sun Martin Westhead, EPCC, University of Edinburgh, UK

30 Remote Method Invocation RMI –entfernter Methodenaufruf –hat Forschung im Bereich verteiltes Rechnen beflügelt –Geschwindigkeit für Cluster Computing nicht ausreichend –Programmiermodell erfüllt nicht alle Wünsche

31 Remote Method Invocation 4 Nicht entworfen für eng gekoppelte Netzwerke 4 Geschwindigkeitsprobleme –aufwendige, langsame Serialisierung –Verluste bei interner Verwaltung –Keine flexible Transportschicht unzureichende Unterstützung von Hochgeschwindigkeitsnetzwerken (ParaStation, Myrinet, ATM,...)

32 Schnelle Serialisierung 4 Entwickelt an der Uni Karlsruhe 4 Ersetzt JDK-Serialisierung unter der Annahme eng gekoppelter Netzwerke 4 Zusammen mit RMI verwendbar 4 ca. um Faktor 10 schneller als der Standard im JDK 4 Verfügbar

33 KaRMI: Schnelles RMI 4 Entwickelt an der Uni Karlsruhe 4 Anpaßbar an Hochgeschwindigkeits- Netze durch Komponenten-Austausch 4 Schlanke Implementierung 4 Verwendet schnelle Serialisierung 4 Transportschicht austauschbar, für ParaStation und Ethernet vorhanden 4 80µ s für entfernten Methodenaufruf

34 JavaParty 4 Java-Mechanismen unzureichend für das Programmieren von Rechnerbündeln –parallel -> Threads –verteilt -> ??? Sockets –Keine entfernten Adressen –Kein entfernter Methodenaufruf –Keine automatische Serialisierung –Keine automatische Speicherbereinigung

35 Warum JavaParty? RMI 4Entfernte Adressen 4Entfernter Methodenaufruf 4Objekte als Parameter 4Automatische Speicherbereinigung –Explizite Namensbindung (registry) –Kein Aufruf statischer Methoden –Zusätzliche Ausnahmebedingungen –Kein entfernter Feldzugriff –Explizite Objekt-Pla[t]zierung –Keine Objekt-Migration

36 Warum JavaParty? 4 Java-Versionen der Salishan- Benchmarks mit den verfügbaren Mechanismen #Zeilen#geändert Java + Threads1277 Sockets % RMI % JavaParty %

37 JavaParty 4 Java-ähnliches multi-threaded Programmiermodell für Rechnerbündel 4 Illusion: verteilte virtuelle Maschine 4 entfernte Objekte verteilt im Cluster –Parallelität durch entfernte Threads –automatische Lokalität & Lastbalance

38 JavaParty 4 Transparente entfernte Objekte mit (näherungsweise) Java-Semantik –entfernte Erzeugung (new) –entfernter Methodenaufruf (auch statische Methoden) –Keine zusätzl. Ausnahmebedingungen –entfernter Variablenzugriff –Synchronisation auf entf. Objekten –Objekt-Migration

39 JavaParty 4 Entfernte Threads –selbe Schnittstelle wie java.lang.Thread –auf entferntem Knoten startbar 4 Lokalität & Lastbalance –Explizite Platzierung –Strategie-Objekt –Dynamisch zur Laufzeit –Statische Analyse beim Übersetzen

40 MPI für Java 4 RMI & Sockets: Client/Server-Modell 4 MPI-1, MPI-2 Standard: –Nachrichtenaustausch –symmetrische Kommunikation 4 benötigt: Java-MPI API Spezifikation –ermöglicht portable MPI-basierte Grande-Anwendungen in Java

41 MPI für Java (Status) 4 mpiJava –JNI -Wrapper für die C++-Bindung von MPI. – 4 JavaMPI –automatisch erzeugte JNI-Wrapper für die C-Bindung von MPI – 4 MPIJ –Reine Java-Implementierung von MPI. –Stark an die C++ Bindung angelehnt –

42 MPI für Java (Status) 4 JMPI (angekündigt) –MPI Soft Tech Inc. –kommerzielles Produkt 4 MPI-Spezifikation (Entwurf) –

43 Seamless Computing 4 DATORR –Desktop Access to Remote Resources – Java-Rahmenwerk für Computing Services

44 Seamless Computing 4 Rechnen als verteilter Dienst 4 Auffinden von Ressourcen 4 Abfrage von Eigenschaften 4 Web-Schnittstelle um jeden Job auf jedem Computer mit beliebiger Datenquelle auszuführen 4 Schnittstelle zum Zusammenschalten mehrerer Computer für einen Job

45 JavaGrande Europe 4 Stärkung der Europäischen Rolle bei Standardisierungsbemühungen 4 Zwei Gruppen –Metacomputing and Interoperability Dr. Mark Baker, Prof. Denis Caromel –High Performance Applications Prof. David Walker, Dr. Michael Philippsen 4

46 Mitarbeit bei JavaGrande 4 Mitarbeit an Standards, Schnittstellen & Bibliotheken 4 Benchmarks beisteuern 4 Interessenvertretung durch JGF wahrnehmen 4 Nutzung des Forums –