Rainer Klar u. a. Messung und Modeliierung paralleler und verteilter Rechensysteme
Messung und Modeliierung paralleler und verteilter Rechensysteme Von Dr.-lng. Rainer Klar Dipl.-lnf. Peter Dauphin Dr.-lng. Franz Hartleb Dr.-lng. Richard Hofmann Dr.-lng. Bernd Mohr Dr.-lng. Andreas Quick Dipl.-lnf. Markus Siegle 83 Springer Fachmedien Wiesbaden 1995
Dr.-lng. Rainer Klar Geboren 1936 in Standort/Schlesien. Studium der Physik von 1958 bis 1964 an der Universität Saarbrücken und der TU Berlin. 1965/66 wiss. Mitarbeiter an der TU Hannover und ab 1966 an der Friedrich-Aiexander Universität Erlangen-Nürnberg. Dort 1971 Promotion in Informatik. 1974 Akademischer Direktor am Institut für Mathematische Maschinen und Datenverarbeitung. 1980 Visiting Professor an der University of Colorado. Boulder. USA. Seit 1981 Abteilungsleiter am Lehrstuhl für Rechnerarchitektur und Verkehrstheorie (Prof. Herzog) der Universität Erlangen-Nürnberg. Dipl.-lnf. Peter Dauphin Geboren 1963 in Dentlein am Forst/Mittelfranken. Studium der Informatik von 1985 bis 1990 in Erlangen. Seit 1990 wiss. Mitarbeiter am Lehrstuhl für Rechnerarchitektur und Verkehrstheorie. Dr.-lng. Franz Hartleb, geb. Sötz Geboren 1963 in Sünching/Oberpfalz. Studium der Informatik von 1983 bis 1988 in Erlangen. Von 1988 bis 1993 wiss. Mitarbeiter am Lehrstuhl für Rechnerarchitektur und Verkehrstheorie. Seit 1993 Mitarbeiter der Firma Siemens im Bereich Anlagentechnik. Dr.-lng. Richard Hofmann Geboren 1958 in Lieritzhofen/Mittelfranken. Studium der Elektrotechnik von 1979 bis 1985 in Erlangen, Promotion im Fachgebiet Rechnerarchitektur 1992. Seit 1986 wiss. Mitarbeiter am Lehrstuhl für Rechnerarchitektur und Verkehrstheorie. Dr.-lng. Dipl.-lnf. Bernd Mohr Geboren 1960 in Schweinfurt Studium der Informatik von 1981 bis 1987 in Erlangen. 1987 bis 1992 w iss. Angestellter am Lehrstuhl für Rechnerarchitektur und Verkehrstheorie. Seit 1993 Research Associate am Department of Computer and Information Science, University of Oregon, USA. Dr.-lng. Andreas Quick Geboren 1962 in Darmstadt. Studium der Informatik von 1982 bis 1988 in Erlangen. Von 1988 bis 1993 wiss. Mitarbeiter am Lehrstuhl für Rechnerarchitektur und Verkehrstheorie. Seit 1993 Leiter der Software-Entwicklung bei der Firma Eberline Radiometrie, Erlangen. Dipl.-lnf. Markus Siegle, M.Sc. Geboren 1964 in Stuttgart. Von 1984 bis 1989 Studium der Informatik in Stuttgart. Von 1989 bis 1990 als Stipendiat der Fulbright-Stiftung an der North Carolina State University, USA. Seit 1990 wiss. Mitarbeiter am Lehrstuhl für Rechnerarchitektur und Verkehrstheorie. Die Deutsche Bibliothek- CIP-Einheitsaufnahme Messung und Modeliierung paralleler und verteilter Rechensysteme I von Rainer Klar... - Stuttgart : Teubner. 1995 ISBN 978-3-519-02144-5 ISBN 978-3-322-99681-7 (ebook) DOI 10.1007/978-3-322-99681-7 NE: Klar. Rainer Das Werk einschließlich aller seiner Teile ist urheberrechtlich geschützt. Jede Verwertung außerhalb der engen Grenzen des Urheberrechtsgesetzes ist ohne.zustimmung des Verlages unzulässig und strafbar. Das gilt besonders für Vervielfältigungen. Ubersetzungen, Mikroverfilmungen und die Einspeicherung und Verarbeitung in elektronischen Systemen. Springer Fachmedien Wiesbaden 1995 Ursprünglich erschienen bei B. G. Teubner Stuttgart 1995
Geleitwort Parallele und verteilte Rechensysteme gewinnen zunehmend an Bedeutung. War in der Vergangenheit der Datenaustausch zwischen dem Mainframe, den Cluster-Maschinen und den Arbeitsplätzen das Ziel der Vernetzung, so liegt heute der Schwerpunkt des Rechnerverbundes auf dem "resource sharing". Schlag- und Reizwörter wie "Massiv Parallel" und "Client Server-Computing" sind in aller Munde. Im Client Server-Umfeld wird die Realisierung von "variablen Server-Konzepten" mit "load balancing" und "automatischer Rekonfigurierung von Hardware- und Software-Komponenten" von eminentem Interesse sein. Daraus resultieren ständig wachsende Anforderungen an Hard- und Software sowie an das System-Management. Es muß deshalb das vorrangige Ziel sein, Techniken und entsprechende Werkzeuge bereitzustellen, die die "Beherrschung"- in Form von Überwachung, Kontrolle, Analyse, Bewertung und Steuerung- solch komplexer Systeme ermöglichen. Dabei müssen Analyse und Bewertung des Verhaltens sowohl des Gesamtsystems als auch relevanter Komponenten zum integralen Bestandteil von Entwicklung und Betrieb derartiger Verbundlösungen werden. Insbesondere Client Server Architectures zeichnen sich durch Eigenschaften wie Parallelität, räumliche Ausbreitung, Größe der Konfigurationen und vor allem Heterogenität (unterschiedliche Hardware-Architekturen, verschiedene Betriebssysteme, diverse Übertragungsmedien und Netzwerk-Betriebssysteme) aus. Die daraus resultierende Komplexität erschwert die Analyse und Bewertung des Systemverhaltens, und das trifft insbesondere auf Leistungsanalyse und -bewertung zu. Es existiert zwar eine Vielzahl von Meß- und Analysewerkzeugen auch für parallele und verteilte Systeme, die aber häufig nur Teilaspekte abdecken. Vor allem mangelt es an einem durchgängigen Konzept für umfassende Leistungsanalysen und-bewertungenderartiger Architekturen. Das vorliegende Buch zeigt auf, wie diese Lücken geschlossen werden können, und gewährt einen ausgezeichneten Einblick in Methoden und Werkzeuge zur Leistungsbewertung in parallelen und verteilten Systemen. Dabei fokussiert es ablauforientierte Techniken mit Zielrichtung auf die ursachenorientierte Analyse. Diese Sichtweise entspricht nicht nur der von Hardware- und Software Entwicklern, sondern unterstützt auch Design und Entwicklung funktional korrekt und effizient arbeitender Systeme. Dieses Buch ist stark praxisorientiert ausgerichtet und dient als Hilfestellung zur Lösung der oben geschilderten Probleme. Ausgehend von der Behandlung der Problematik der globalen Systemsicht sowie der zeitlich korrekt zuordenbaren Ereignisse in parallelen und verteilten Systemen werden Verfahren und Werkzeuge zur Leistungsmessung und -modellierung vorgestellt. Neben dem Praxisbezug wird dabei besonderes Gewicht auf die Interpretation und Präsentation der Ergebnisse wie auch auf die Integration von Messung und Modeliierung gelegt.
6 Mit Recht beklagen und kritisieren die Autoren die "Selbstisolation der Leistungsbewertung" und die nicht durchgängige Anwendung quantitativer Techniken in allen Phasen der Entwicklung von Rechensystemen. Zwar wurden zur Behebung dieses Mangels in den 80er Jahren vermehrt Anstrengungen unternommen - teilweise sogar mit Unterstützung des Bundesministeriums für Forschung und Technologie- dennoch ist dieser Trend seit Anfang der 90er wieder rückläufig, sicherlich bedingt durch den raschen technologischen Wandel und durch "Argumente" wie "steckbare Leistung". Aber insbesondere in parallelen und verteilten Systemen ist die Notwendigkeit einer umfassenden Leistungsanalyse und -bewertung notwendiger denn je. Dieses Buch wird somit seiner gesteckten Zielsetzung gerecht: "... einen Beitrag dazu zu leisten, die Selbstisolation der Leistungsbewerter zu durchbrechen und die Leistungsbewertung zu einem integralen Bestandteil der Systementwicklung zu machen"; denn einige der hier vorgestellten Verfahren werden bereits bei namhaften Herstellern eingesetzt und sogar weiterentwickelt. Reinhard Bordewisch
Bezugsquellen Information/Handbücher Zusätzliches Informationsmaterial über das Monitorsystem ZM4, die Ereignisspuranalyseumgebung SIMPLE sowie das Modellierungswerkzeug PEPP ist in Form von Zeitschriftenartikeln und internen Berichten über das Internet zugreifbar. Der FTP-Server hat die Intemet -Adresse faui79.informatik.uni-erlangen.de [131.188.47.79] Im Katalog -ftp/pub/doc werden Artikel und Dokumentationen in komprimiertem PostScript-Format gehalten. Dieselben Informationen können auch über das World Wide Web (WWW) abgerufen werden. Das URL lautet http://www7.informatik.uni-erlangen.de/tree/immd-vii/ Research/Groups/MMB/ Neben den Artikeln und Dokumentationen werden hier die Forschungsgruppe sowie aktuelle Projekte vorgestellt, in denen die in diesem Buch beschriebenen Monitaringund Modellierungswerkzeuge eingesetzt und weiterentwickelt werden. Leistungsbewertungssoftware Die in diesem Buch vorgestellte Ereignisspuranalyseumgebung SIMPLE und das Modellierungswerkzeug PEPP sind in binärer Form vom Lehrstuhl für Rechnerarchitektur und Verkehrstheorie der Universität Erlangen-Nümberg beziehbar. Für Universitäten ist die Lizenz kostenlos. Anfragen können gerichtet werden an Universität Erlangen-Nürnberg Lehrstuhl für Informatik 7 (Prof. Dr. U. Herzog) Martensstra.ße 3 91058 Erlangen email: mmb immd 7.Informatik. uni-erlangen.de Leistungsbewertungshardware Der Hardwaremonitor ZM4 ist in begrenzter Stückzahl über obige Adresse erhältlich. Diese Arbeit wurde von der Deutschen Forschungsgemeinschaft Im Rahmen des Sonderforschungsbereiches 182 ltellprojekt "Messung, Modeliierung und Bewertung von Multiprozessoren und Rechnernetzen") gefördert.
Inhalt 1 Einleitung................................ 13 1.1 Von summarischer zu ablauforientierter Leistungsbewertung... 16 1.2 Zur Gliederung des Buches.................... 20 Literatur........................................ 21 2 Kausalität in Computersystemen... 23 2.1 Kausalität und Kommunikation................. 23 2.1.1 Basis-Kommunikationsmechanismen... 23 2.1.2 Bedeutung und Problematik der Kommunikation..... 25 2.2 Ordnungsrelationen......................... 26 2.2.1 Chronologische Totalordnung................... 27 2.2.2 Chronologische Halbordnung................... 29 2.2.3 Kausale Halbordnung........................ 30 2.3 Ordnungsmechanismen...................... 33 2.3.1 Zentrale Monitorsysteme...................... 34 2.3.2 Skalare logische Zeitstempel................... 35 2.3.3 Logische Vektorzeitstempel.................... 38 2.3.4 Physikalische Zeitstempel..................... 41 2.3.5 Zeitstempel in Monitoren...................... 46 2.4 Folgerungen............................... 47 Literatur... 49 3 3.1 3.2 3.3 3.4 3.4.1 3.4.2 3.5 3.5.1 3.5.2 3.5.3 3.5.4 3.6 3.7 3.7.1 3.7.2 Monitoring verteilter und paralleler Rechensysteme. 51 Pflichtenheft für Multiprozessormonitore... 51 Ereignisdefinition........................... 53 Architektur des Monitorsystems ZM4............. 55 Ereigniserkennung und -erfassung... 57 Ereignisrecorder als Grund-DPU... 58 DPU-Steuersoftware... 59 Globale Zeitstempel......................... 60 Konzept: Meßtaktgenerator und DPU-Oszillatoren.... 60 Manchester Code und seine Erzeugung............ 61 Dezentrale Bildung globaler Zeitstempel........... 63 Steuerung eines verteilten Meßablaufs............ 65 Schnittstellen... 67 Interfaces für Parallelschnittstellen............... 70 Das Parallel-Interface für Centronics... 71 MEMSY-Meßschnittstelle... 73
10 Inhalt 4 3.8 Interfaces mit Adreßvergleich................... 76 3.8.1 Interface für VME-Bus... 77 3.8.2 Transputer-Bus-Interface... 77 3.9 Interfaces mit Ereigniserkennung................ 78 3.9.1 Handshake-Interface für V24-Schnittstellen......... 79 3.9.2 SUPRENUM-Meßschnittstelle... 82 Literatur........................................ 84 4.1 4.2 4.2.1 4.2.2 4.2.3 4.2.4 4.2.5 4.2.6 4.3 4.3.1 4.4 4.4.1 4.4.2 4.4.3 4.4.4 4.4.5 4.4.6 4.4.7 4.4.8 Ereignisspuranalyse........................ 87 Allgemeiner Aufbau und Struktur von ereignisbasierten Analysesystemen... 87 Entkopplung von Messung und Auswertung........ 90 Standardisierungsmöglichkeiten................. 90 Abstrakte Datentypen für die Ereignisspuranalyse.... 93 Logische Ereignisspuren und ihre Beschreibung mit TDL... 95 TDL-Beschreibung für eine Messung am E-ISDN-Testsystem... 100 Die Datenzugriffsschnittstelle POET............. 107 Vorteile des TDL/POET-Zugriffskonzepts.......... 109 Selektion von Ereignissen.................... 111 Die Filterbeschreibungssprache FDL............. 112 Auswertewerkzeuge......................... 115 Grundsätzliche Struktur der Analysewerkzeuge..... 116 Statistische Auswertungen über Elementarereignisse......................... 119 Statistische Auswertungen über Ereignisse höherer Ordnung................................. 126 Ablauforientierte Auswertung mit Kausalitätsdiagrammen... 129 Ablauforientierte Auswertung mit Zeit -Zustands-Diagrammen.................... 135 Validierung mit Zusicherungen................. 141 Überblick über verfügbare Werkzeuge............ 145 Exemplarische Realisierung eines einfachen Werkzeugs............................... 149 4.5 SIMPLE aus der Sicht des Schichtenmodells....... 157 4.6 Weitere Ereignisspuranalysesysteme............. 159 Literatur....................................... 163
Inhalt 11 5 Leistungsbewertung mit ModeDen............. 167 5.1 Die Problemstellung........................ 168 5.2 5.2.1 5.2.2 5.2.3 5.3 5.3.1 5.3.2 5.3.3 5.3.4 5.3.5 Stochastische Graphmodelle.................. 170 Modeliierung der Last....................... 170 Modeliierung der Maschineneigenschaften......... 173 Abbildung des Lösungsverfahrens auf die Zielmaschine............................. 17 4 Der Modellwerkzeugkasten PEPP............... 176 Modellierungsmöglichkeiten................... 179 Serienparallele Graphen: Auswertung mit SPASS.... 182 Nichtserienparallele Graphen: Auswertung mit der transienten Zustandsraumanalyse bei exponentiell verteilten Knotenlaufzeiten.................... 190 Nichtserienparallele Graphen: Approximative Auswertung mittels de-verfahren................ 194 Nichtserienparallele Graphen: Approximative Auswertung durch Schranken.................. 198 Schranken durch Hinzufügen/Weglassen von Kanten. 199 Schranken durch Hinzufügen/Weglassen von Knoten. 203 5.3.5.1 5.3.5.2 5.3.6 Vergleich der Auswertemethoden... 206 5.3.6.1 Genauigkeit der de-approximation.............. 206 5.3.6.2 Genauigkeit der Schrankenverfahren... 208 5.3.6.3 Vergleich des Berechnungsaufwands... 210 5.4 Weitere Modellierungsmethoden................ 211 5.4.1 Warteschlangenmodelle...................... 211 5.4.2 Petri-Netz-Modelle.......................... 217 5.4.3 Stochastische Prozeßalgebren................. 223 5.4.4 SDL und MSCs............................ 225 Literatur....................................... 226 6 6.1 6.2 6.2.1 6.2.2 6.2.3 6.2.4 Die Integration von Monitaring und Modellierung.. 231 Methodenintegration und ereignisorientierte Verhaltensbeschreibung...................... 231 Programminstrumentierung... 232 Eigenschaften der Programminstrumentierung...... 232 Anmerkungen zur Analyse von Rückwirkungen..... 233 Definitionen.............................. 234 Wege zu einer adäquaten Instrumentierung........ 236
12 6.3 6.3.1 6.3.2 6.4 6.5 6.5.1 6.5.2 6.5.3 6.5.4 6.5.5 6.6 Inhalt Modellgesteuerte Instrumentierung............ 239 Realisierung der inhaltsorientierten Abstraktion... 239 Vorteile der Modellgesteuerten Instrumentierung für den Bewertungsprozeß....................... 243 Gegenüberstellung mit Ansätzen aus der Literatur... 246 Modellgesteuertes Monitoring: Praktische Realisierung 248 Modellgesteuerte Instrumentierung mit AICOS...... 249 Modellgesteuerte Unterstützung von Messungen..... 255 Modellgesteuerte Validierung.................. 257 Modellgesteuerte Spurauswertung.............. 260 Synchronisierte Validierung und Spurauswertung... 261 Zusammenfassung......................... 264 Literatur....................................... 265 Index.......................................... 268