Benutzer-Werkzeuge

Webseiten-Werkzeuge


se:parallelrechner

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

se:parallelrechner [2008-12-31 18:20]
stefan
se:parallelrechner [2014-04-05 11:42]
Zeile 1: Zeile 1:
-====== Parallelrechner ====== 
  
-===== Klausur ===== 
-  * Codeabschnitte verifizieren 
-  * Online-Learning anschauen 
-  * Programm als Lückentext 
-  * Verstehen der wichtigsten Funktionen (send/recv) 
-  * Architekturen verstehen (Shared Memory etc.)  ​ 
-  * Metriken verstehen, Metriken (Formeln) für neue Topologie entwickeln 
-  * Leistungsbewertung (Gesetze Amdahl etc.)  
-  * keine virtuellen Topologien 
-  * OpenMP eher allgemein (Kombination mit MPI) 
-  * Matrizenrechnung fliegt raushttp://​wiki.stefan-macke.com/​doku.php/​se:​parallelrechner 
-  * Bibliotheken für Parallelrechner nur oberflächlich ​     ​ 
-  * Leseempfehlung 
-    * Gesetze Amdahl etc. 
-    * MPI-Standard 
- 
-Lehrbrief ist erlaubt! 
- 
-===== Online-Kurs ===== 
-==== Fundamentals ==== 
-  * Voraussetzungen für effektive Parallelisierung 
-    * schnelle Verbindung zwischen Prozessoren und Speicher und den einzelnen Prozessen, sowie schnelle Datenübertragung in und aus dem Speicher 
-    * Protokoll für Interprozesskommunikation 
-    * die Algorithmen müssen parallelisierbar sein und in kleine Teilprobleme aufgeteilt werden können 
-    * Mechanismus zur Verteilung der Aufgaben an die Prozesse 
-  * Computerarchitekturen nach Flynn 1972 
-    * Single Instruction Single Data (SISD) 
-    * Multiple Instruction Single Data (MISD) 
-    * Single Instruction Multiple Data (SIMD) 
-      * 1 CPU zur Steuerung und mehrere CPUs mit eigenem Speicher 
-      * Steuer-CPU sendet Broadcasts und die anderen CPU rechnen, abhängig von konditionalen Bedingungen im Code 
-      * Nachteil: viele CPUs bleiben idle 
-    * Multiple Instruction Multiple Data (MIMD) 
-      * jede CPU hat übernimmt sowohl Steuerung als auch Berechnung 
-      * Programme werden von jeder CPU unabhängig von den anderen ausgeführt -> asynchron 
-      * 3 Typen: shared memory (CPUs teilen sich gemeinsamen Speicher), distributed memory (Knoten, die zusammen ein Problem lösen) und shared memory processing (Kombination der beiden vorherigen) 
-  * Shared-Memory MIMD 
-    * Verbindung zwischen CPUs und Speicher via Bus oder Switch 
-    * {{:​se:​shared_mimd.jpg|}} 
-    * CPUs haben zusätzlich internen Speicher: Register und Cache 
-    * Problem bei Verwendung von Cache: Variablen haben nach Änderung durch anderen Prozess vielleicht falschen Wert -> Protokoll wird benötigt zum Ermitteln solcher Fälle 
se/parallelrechner.txt · Zuletzt geändert: 2014-04-05 11:42 (Externe Bearbeitung)