Simulationssystem

Aus Info-Theke
Version vom 19. November 2021, 09:01 Uhr von Hamatoma (Diskussion | Beiträge) (Die Seite wurde neu angelegt: „= Zielsetzung = Simulation in einem Netz mit 10E9 Punkten. Dies setzt hohe Effizienz voraus, sowohl in Datenhaltung als auch in Programmperformance. Höchste…“)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Zur Navigation springen Zur Suche springen

Zielsetzung

Simulation in einem Netz mit 10E9 Punkten.

Dies setzt hohe Effizienz voraus, sowohl in Datenhaltung als auch in Programmperformance.

Höchste Effizienz ist nur bei Verarbeitung im Haupspeicher gewährleistet: Bei 100 Takten pro Transaktion (in einem Punkt), 50 Threads und 1 Milliarde Punkte und 2 GHz CPU-Takt ergibt das 1 Sekunde zur Verarbeitung dieser Transaktion über alle Punkte.

Systemaufbau

Es stehen eine Reihe von Grundelementen zur Verfügung, die hocheffizient Daten in den Punkten erzeugen (Modellierung) oder Daten aus den Punkten gewinnen (Aggregation).

Diese Elemente können in einer speziellen Sprache verwendet werden um die Simulation zu beschreiben.

Aus dieser Simulationsbeschreibung wird Quellcode erzeugt, der dann compiliert und abgearbeitet wird.

Aufteilung des Netzes bei zu großen Datenmengen

Passen die Daten aller Punkte nicht in den Arbeitsspeicher, so können die Punkte in Teilgebiete zerlegt werden, die dann in den Arbeitsspeicher passen:

Beispiel: Daten pro Punkt 1000 Byte, Punkte: 20000*50000 = 1E9, Arbietsspeicher 500 GByte: Aufteilung in 2 Paritionen mit 20000*25000 und 20000*25000