Mitglied : Anmelden |Anmeldung |Wissen hochladen
Suchen
Parallele Berechnung [Änderung ]
Parallelrechnen ist eine Art von Berechnung, bei der viele Berechnungen oder die Ausführung von Prozessen gleichzeitig ausgeführt werden. Große Probleme können oft in kleinere unterteilt werden, die dann gleichzeitig gelöst werden können. Es gibt verschiedene Formen der parallelen Datenverarbeitung: Bit-Ebene, Befehlsebene, Daten und Task-Parallelität. Parallelität wird seit vielen Jahren hauptsächlich im Hochleistungsrechnen verwendet, aber das Interesse daran ist in letzter Zeit aufgrund der physikalischen Beschränkungen gewachsen, die eine Frequenzskalierung verhindern. Da der Stromverbrauch (und folglich die Wärmeerzeugung) durch Computer in den letzten Jahren zu einem Problem geworden ist, ist das parallele Rechnen das vorherrschende Paradigma in der Computerarchitektur geworden, hauptsächlich in Form von Mehrkernprozessoren.
Paralleles Rechnen ist eng mit dem gleichzeitigen Rechnen verbunden - sie werden häufig zusammen verwendet und oft miteinander verschmolzen, obwohl beide voneinander verschieden sind: Parallelität ohne Parallelität (z. B. Parallelität auf Bit-Ebene) und Parallelität ohne Parallelität (z. B. Multitasking) ist möglich durch Timesharing auf einer Single-Core-CPU). Beim parallelen Rechnen wird eine Rechenaufgabe typischerweise in mehrere, oft viele, sehr ähnliche Teilaufgaben aufgeteilt, die unabhängig voneinander verarbeitet werden können und deren Ergebnisse nach der Fertigstellung anschließend kombiniert werden. Im Gegensatz dazu adressieren die verschiedenen Prozesse bei gleichzeitigem Computing häufig nicht verwandte Aufgaben; Wenn dies der Fall ist, wie es bei verteilter Datenverarbeitung typisch ist, können die getrennten Aufgaben eine unterschiedliche Natur haben und erfordern häufig während der Ausführung eine Kommunikation zwischen Prozessen.
Parallele Computer können grob nach dem Grad klassifiziert werden, auf dem die Hardware Parallelität unterstützt, wobei Multi-Core- und Multi-Prozessor-Computer mehrere Verarbeitungselemente in einer einzigen Maschine haben, während Cluster, MPPs und Grids mehrere Computer verwenden Aufgabe. Parallel zu herkömmlichen Prozessoren werden manchmal spezialisierte parallele Computerarchitekturen verwendet, um bestimmte Aufgaben zu beschleunigen.
In einigen Fällen ist die Parallelität für den Programmierer transparent, beispielsweise in der Bit- oder Anweisungs-Parallelität, aber explizit parallele Algorithmen, insbesondere diejenigen, die Gleichzeitigkeit verwenden, sind schwieriger zu schreiben als sequenzielle, da die Nebenläufigkeit mehrere neue Potentialklassen einführt Software-Bugs, von denen Rennbedingungen am häufigsten sind. Kommunikation und Synchronisation zwischen den verschiedenen Teilaufgaben sind typischerweise einige der größten Hindernisse für eine gute parallele Programmleistung.
Eine theoretische Obergrenze für die Beschleunigung eines einzelnen Programms als Folge der Parallelisierung ergibt sich aus dem Amdahlschen Gesetz.
[Supercomputer][Rechnerarchitektur][Verteiltes Rechnen][Grid-Computing][Softwarefehler]
1.Hintergrund
1.1.Amdahls Gesetz und Gustafsons Gesetz
1.2.Abhängigkeiten
1.3.Race Conditions, wechselseitiger Ausschluss, Synchronisation und parallele Verlangsamung
1.4.Feinkörnige, grobkörnige und peinliche Parallelität
1.5.Konsistenzmodelle
1.6.Flynns Taxonomie
2.Arten der Parallelität
2.1.Bit-Level-Parallelität
2.2.Parallelität auf Befehlsebene
2.3.Aufgabenparallelität
3.Hardware
3.1.Speicher und Kommunikation
3.2.Klassen von parallelen Computern
3.2.1.Multi-Core-Computing
3.2.2.Symmetrisches Multiprocessing
3.2.3.Verteiltes Rechnen
3.2.3.1.Cluster-Computing
3.2.3.2.Massiv parallele Datenverarbeitung
3.2.3.3.Grid-Computing
3.2.4.Spezialisierte parallele Computer
3.2.4.1.Rekonfigurierbares Rechnen mit feldprogrammierbaren Gate-Arrays
3.2.4.2.Allzweck-Computing auf Grafikprozessoren (GPGPU)
3.2.4.3.Anwendungsspezifische integrierte Schaltungen
3.2.4.4.Vektor-Prozessoren
4.Software
4.1.Parallele Programmiersprachen
4.2.Automatische Parallelisierung
4.3.Anwendungs-Checkpoint
5.Algorithmische Methoden
6.Fehlertoleranz
7.Geschichte
8.Biologisches Gehirn als massiv paralleler Computer
[Laden Mehr Inhalt ]


Urheberrecht @2018 Lxjkh