Klausur zu High Performance Computing 09. Juli 2011, SS 2011



Ähnliche Dokumente
Zeichen bei Zahlen entschlüsseln

Professionelle Seminare im Bereich MS-Office

Letzte Krankenkassen streichen Zusatzbeiträge

Primzahlen und RSA-Verschlüsselung

Was meinen die Leute eigentlich mit: Grexit?

Sichere Anleitung Zertifikate / Schlüssel für Kunden der Sparkasse Germersheim-Kandel. Sichere . der

Klausur zu High Performance Computing 12. Juli 2013

Daten sammeln, darstellen, auswerten

Klausur zur Einführung in die objektorientierte Programmierung mit Java

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren

Unterrichtsmaterialien in digitaler und in gedruckter Form. Auszug aus: Übungsbuch für den Grundkurs mit Tipps und Lösungen: Analysis

Gründe für fehlende Vorsorgemaßnahmen gegen Krankheit

Die Invaliden-Versicherung ändert sich

Lösung. Prüfungsteil 1: Aufgabe 1

Anleitung über den Umgang mit Schildern

Teil 1: IT- und Medientechnik

Name (in Druckbuchstaben): Matrikelnummer: Unterschrift:

Stellvertretenden Genehmiger verwalten. Tipps & Tricks

Die Post hat eine Umfrage gemacht

Otto-von-Guericke-Universität Magdeburg

Kleine Anfrage mit Antwort

Lizenzen auschecken. Was ist zu tun?

geben. Die Wahrscheinlichkeit von 100% ist hier demnach nur der Gehen wir einmal davon aus, dass die von uns angenommenen

Klausur zur Veranstaltung Industrielle Produktionssysteme im SS 04

Lichtbrechung an Linsen

a) Bis zu welchem Datum müssen sie spätestens ihre jetzigen Wohnungen gekündigt haben, wenn sie selber keine Nachmieter suchen wollen?

Info zum Zusammenhang von Auflösung und Genauigkeit

Kapiteltests zum Leitprogramm Binäre Suchbäume

Sowohl die Malstreifen als auch die Neperschen Streifen können auch in anderen Stellenwertsystemen verwendet werden.

... Beobachtungspraktikum. 1. Sternbilder

Prof. Dr. Uwe Schmidt. 21. August Aufgaben zur Klausur Objektorientierte Programmierung im SS 2007 (IA 252)

einfache Rendite

How-to: Webserver NAT. Securepoint Security System Version 2007nx

Pflegende Angehörige Online Ihre Plattform im Internet

Wintersemester Maschinenbau und Kunststofftechnik. Informatik. Tobias Wolf Seite 1 von 18

9 Auto. Rund um das Auto. Welche Wörter zum Thema Auto kennst du? Welches Wort passt? Lies die Definitionen und ordne zu.

Outlook. sysplus.ch outlook - mail-grundlagen Seite 1/8. Mail-Grundlagen. Posteingang

V 2 B, C, D Drinks. Möglicher Lösungsweg a) Gleichungssystem: 300x y = x + 500y = 597,5 2x3 Matrix: Energydrink 0,7 Mineralwasser 0,775,

Wie erreiche ich was?

Gemeinsam können die Länder der EU mehr erreichen

Version Deutsch In diesem HOWTO wird beschrieben wie Sie Ihr vorhandenes PMS-System mit der IAC-BOX verbinden und konfigurieren.

AGROPLUS Buchhaltung. Daten-Server und Sicherheitskopie. Version vom b

trivum Multiroom System Konfigurations- Anleitung Erstellen eines RS232 Protokolls am Bespiel eines Marantz SR7005

mysql - Clients MySQL - Abfragen eine serverbasierenden Datenbank

Ingenieurinformatik Diplom-FA (Teil 2, C-Programmierung)

M-net -Adressen einrichten - Apple iphone

Von zufriedenen zu treuen Kunden


Probeklausur Softwareengineering SS 15

Digitaler*Ausstellungsbegleiter*für*Mobilgeräte ** * * * Alter: Studiengang: Geschlecht: $ $ $ $ Datum: Falls%Ja,%welches? Falls%ja, %welches?

Binäre Bäume. 1. Allgemeines. 2. Funktionsweise. 2.1 Eintragen

macs Support Ticket System

SEMINAR Modifikation für die Nutzung des Community Builders

Anleitung für Aussteller So funktioniert s!

Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung)

Preisvergleich ProfitBricks - Amazon Web Services M3 Instanz

Physik & Musik. Stimmgabeln. 1 Auftrag

Tutorium zur Mikroökonomie II WS 02/03 Universität Mannheim Tri Vi Dang. Aufgabenblatt 3 (KW 44) ( )

Meet the Germans. Lerntipp zur Schulung der Fertigkeit des Sprechens. Lerntipp und Redemittel zur Präsentation oder einen Vortrag halten

Verwendung des IDS Backup Systems unter Windows 2000

Alle gehören dazu. Vorwort

Was ist das Budget für Arbeit?

Europäischer Fonds für Regionale Entwicklung: EFRE im Bundes-Land Brandenburg vom Jahr 2014 bis für das Jahr 2020 in Leichter Sprache

Ihr Mandant möchte einen neuen Gesellschafter aufnehmen. In welcher Höhe wäre eine Vergütung inklusive Tantieme steuerrechtlich zulässig?

Erfahrungen mit Hartz IV- Empfängern

DER SELBST-CHECK FÜR IHR PROJEKT

Prozeß P1 Prozeß P2. Zur Synchronisation stehen den beiden Prozessen binäre Semaphore und die beiden Funktionen

Würfelt man dabei je genau 10 - mal eine 1, 2, 3, 4, 5 und 6, so beträgt die Anzahl. der verschiedenen Reihenfolgen, in denen man dies tun kann, 60!.

UserManual. Handbuch zur Konfiguration einer FRITZ!Box. Autor: Version: Hansruedi Steiner 2.0, November 2014

Hochschule München, FK 03 FA SS Ingenieurinformatik

Welchen Nutzen haben Risikoanalysen für Privatanleger?


Klausur in Programmieren

Einführung in die Programmierung (EPR)

Prüfung Software Engineering I (IB)

Name: Matr.-Nr. Datum: Bitte beachten Sie:

Einrichten des Elektronischen Postfachs

Novell Client. Anleitung. zur Verfügung gestellt durch: ZID Dezentrale Systeme. Februar ZID Dezentrale Systeme

Zahlenwinkel: Forscherkarte 1. alleine. Zahlenwinkel: Forschertipp 1

Dienstleistungsfachwirtin / fachwirt

Orientierungstest für angehende Industriemeister. Vorbereitungskurs Mathematik

Albert HAYR Linux, IT and Open Source Expert and Solution Architect. Open Source professionell einsetzen

Entwicklung des Dentalmarktes in 2010 und Papier versus Plastik.

Avira Support Collector. Kurzanleitung

In diesem Tutorial lernen Sie, wie Sie einen Termin erfassen und verschiedene Einstellungen zu einem Termin vornehmen können.

SDD System Design Document

HIER GEHT ES UM IHR GUTES GELD ZINSRECHNUNG IM UNTERNEHMEN

Abiturprüfung Mathematik 2008 (Baden-Württemberg) Berufliche Gymnasien ohne TG Analysis, Aufgabe 1

Kontaktlos bezahlen mit Visa

Glaube an die Existenz von Regeln für Vergleiche und Kenntnis der Regeln

IntelliRestore Seedload und Notfallwiederherstellung

BSV Software Support Mobile Portal (SMP) Stand

Wie oft soll ich essen?

Adventskalender Gewinnspiel

Der monatliche Tarif für ein Handy wurde als lineare Funktion der Form f(x) = k x + d modelliert (siehe Grafik).

ELEXBO A-Car-Engineering

L10N-Manager 3. Netzwerktreffen der Hochschulübersetzer/i nnen Mannheim 10. Mai 2016

Messung der Astronomischen Einheit nach Aristarch

Das Leitbild vom Verein WIR

Transkript:

Alexander Vondrous, Britta Nestler, Fakultät IWI, Hochschule Karlsruhe Klausur zu High Performance Computing 09. Juli 2011, SS 2011 Es sind keine Hilfsmittel zugelassen. Bearbeitungszeit: 90 Minuten Aufgabe 1: Forschung und Entwicklung Die Mikroprozessorforschung ist sehr aktiv. Neue Erkenntnisse und Forschungsergebnisse fließen schnell in neue Produkte ein. Laut Gordon Moores Schätzung verdoppelt sich die Anzahl der Transistoren eines Chips etwas alle 24 Monte. Diese Schätzung hat bis heute Bestand und könnte einige Jahre Gültigkeit behalten. a) No free lunch for traditional software (Kein kostenloses Mittagessen für traditionelle Software) Kommentieren Sie diese Aussage vor dem Hintergrund, dass der CPU Takt heute nicht bei 24 GHz liegt und erläutern Sie die Konsequenzen für Softwareentwicklungen. b) Nennen Sie 4 Gründe für parallele Datenverarbeitung. c) In welche zwei groben Kategorien wird parallele Datenverarbeitung unterschieden? Vernachlässigen Sie GPUs. Aufgabe 2: Parallele Leistungsmaße Es ist nicht immer möglich bei gegebener Problemgröße den Speedup eines parallelen Programms zu berechnen, weil die sequentielle Verarbeitung mehrere Jahre benötigen würde. a) Für die zwei Programme foo und bar wurden Messungen bei gleicher Problemgröße und unterschiedlich vielen CPUs durchgeführt. In den folgenden Tabellen sind die Messergebnisse eingetragen. Bestimmen Sie den Speedup zur jeweils vorherigen Messung und bestimmen Sie zum Vergleich den optimalen Speedup. CPUs Laufzeit (foo) Speedup (foo) Speedup optimal (foo) 86 140 h - - 172 84 h 344 63 h CPUs Laufzeit (bar) Speedup (bar) Speedup optimal (bar) 73 64 h - - 292 21 h 584 14 h 876 14 h b) Mit einer hüheren Anzahl CPUs kann mit Programm bar keine Laufzeitreduzierung bei mehr als 584 CPUs erzielt werden. Nennen Sie 3 Ursachen für schlechte Skalierbarkeit.

Aufgabe 3: Amdahl und Gustavson Die theoretische Betrachtung paralleler Leistung (Speedup) lässt sich gut durch Amdahls und Gustavsons Gesetz beschreiben. a) Bei einer Code Analyse des Programmes foobar hat sich herausgestellt, dass der parllele Anteil t p 95% beträgt. Wie hoch würe nach Amdahls Gesetz der Speedup mit 10 CPUs? b) Wie hoch wäre der maximal mögliche Speedup nach Amdahls Gesetz. Lassen Sie die Anzahl CPUs gegen unendlich streben. c) Durch weitere Analysen wurde bemerkt, dass der sequentielle Anteil von der Problemgröße unabhängig und somit konstant ist. Es wurde ermittelt, dass der sequentielle Teil 2 Tage und der parallele Teil 8 Tage bei 230 CPUs benötigte. Berechnen Sie den Speedup nach Gustavson. Aufgabe 4: Hadoop Damit die USS Enterprise in der Lage ist, viele Daten von fremden Galaxien und Zivilisationen schnell zu vearbeiten, wurde neben dem Warpkern im Maschinenraum ein Cluster mit Hadoop eingerichtet. a) Hadoop biete eine einfache Art der Parallelierung. Welche zwei Funktionen werden von Hadoop benötigt und müssen vom Benutzer implementiert werden? Wie heißt der im Hadoop implementierte Algorithmus? b) Für welche Aufgaben ist es sinvoll ein solches Frameworks zu verwenden? Nennen sie 4 Beispiele und zwei Gegenbeispiele. Aufgabe 5: MPI Kommunikationsarten Zur schnellen Berechnung der Materie Antimaterie Reaktion im Warpkern verfügt die Enterprise auch über einen Hochleistungscluster der mit MPI Progammiert werden kann. a) Welche zwei Kommunikationsarten lassen sich bei MPI unterscheiden? b) Nennen Sie jeweils zwei konkrete Beispiele (Pseudocode). c) Wie können parallel Programme mit MPI Synchronisiert werden? d) Nennen Sie 4 Fehler, die bei paralleler Datenverarbeitung auftreten können (Stichpunkte). Aufgabe 6: OpenMP. Neben den großen Systemen besitzt die Enterprise auch mehrere kleinere System die mit Hilfe von OpenMP ihre Aufgaben parallel rechnen. a) Was ist bei der Parallelsierung mit OpenMP bezüglich der Verwendung von Variablen zu beachten? b) OpenMP bietet eine sehr einfach Schnittstelle zur Parallelisierung. Zeigen Sie anhand eines kurzen Pseudo Code Beispiels das Quadrieren aller Elemente eines vectors der Länge n.

Aufgabe 7: Asynchrone Kommunikation mit MPI Das Programm zur Steuerung des Abstandes zwischen Mond und Erde tauscht regelmässig seine Daten über die beiden Asynchronen Funktionn MPI ISend und MPI IRecv aus. Dabei kam es zur Sternzeit -311648.48401826475 zu einem schweren Fehler bei dem der Mond beinahe in die Sonne stürzte. Nur durch den waghalsigen Einsatz von James T. Kirk konnte der Mond auf seine Umlaufbahn zurück gebracht werden. a) Beschreiben Sie das Programmverhalten. b) Finden Sie die Fehler, so dass der Mond auch in Zukunft weiter sicher um die Erde Kreist. c) Erläutern Sie, was bei Asynchroner Kommunikation schief gehen kann, im Vergleich zur Synchronen Kommunikation. // Name : Moon2Earth.c // Author : Scotty #include [...] #define EARTH 0 #define MOON 1 #define SUN 2 int main(int argc, char* argv[]) { int my_rank; /* rank of process */ int p; /* number of processes */ int source; /* rank of sender */ int dest; /* rank of receiver */ int tag=0; /* tag for messages */ int moonpos /* moon position */ // Init MPI and set my_rank, p, MPI_Status status, MPI_Request* request [...] for (int var = 0; var < 100; ++var) { if (my_rank == MOON){ moonpos = calcmoonposition(var); dest = 0; MPI_ISend(&moonpos, sizeof(int), MPI_INT, dest+1, tag, MPI_COMM_WORLD, &request); else if (my_rank == EARTH) { printf("the moon moved to this coordinate: "); int earthpos = calcearthposition(var); for (source = 1; source < p; source++) { MPI_Irecv(&moonpos, sizeof(int), MPI_INT, source, tag, MPI_COMM_WORLD, &request); MPI_Wait(&request, &status); printf("%i\n",moonpos); correctmoonpos(earthpos, moonpos); else { /* Wait for the rest to calculate */ MPI_Barrier(MPI_COMM_WORLD); // Shut down MPI MPI_Finalize(); return 0;

Aufgabe 8: OpenCl Nach den langen und geheimen Verhandlungen mit den Klingonen ist die Manschaft der Enterprise zur Sternzeit -311481.01826484024 an die neuste Graphikkartentechnologie gekommen. Schreiben Sie für die Manschaft in einfachem Pseudocode den Graphikkernel zum Überblenden zweier Bilder (image+ = overlay alpha) mit einer bestimmten Transparenz alpha. Damit ist es nun möglich, Bilder schnell mit einem Föderationslogo zu versehen. Quelltext: kernel void addoverlay ( global float *image, global float *overlay, global float *alpha, global float *x, global float *y) { int tid = get_local_id(0); //TODO: addieren Sie die Werte aus dem Overlayfeld // entsprechend des Alpha Werts auf das Bild! Aufgabe 9: Netzwerke Die Enterprise hat den Ersten Kontakt mit einem Borg Cubus herstgellt. Trotz schwerer Schäden konnte die Enterprise den Borg entkommen. Dabei wurde eine Interessante Beobachtung ihres kollektiven Netzwerkes gemacht. Das Flottenoberkommando interessieren dabei vor allem verschiedene Kenngrößen des Borg Netzerwerks. Bestimmen sie diese Kenngrößen anhand des Ihnen vorliegenden Borg Netzwerks. Abbildung 1: Borg Netwerk Durchmesser Grad (max/min) / Bisektionsbandbreite Konnektivität

Aufgabe 10: Netzwerke Nach der Analyse des Borg Netzwerks möchte sich auch die Föderation auf einen bevorstehenden Krieg mit den Borg rüsten. Die besten Wissenschaftler haben dabei herausgefunden das sie ein Netzwerk mit den folgenden Kenngrößen zur Vernetzung einführen sollten. Durchmesser 1 Grad (max/min) 4 / 4 Bisektionsbandbreite 6 Konnektivität 4 Zeichnen Sie ein Netzwerk mit diesen Kenngrößen. Viel Erfolg! Live long and prosper