Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
High-Performance Computing-Systeme (HPC) sind so konzipiert, dass große Datenmengen verarbeitet und komplexe Berechnungen mit hohen Geschwindigkeiten durchgeführt werden. Das Verstehen und Messen ihrer Leistung ist entscheidend für Systemoptimierung, Beschaffungsentscheidungen und sicherstellen, dass Anwendungen Leistungsanforderungen erfüllen. Dieses Dokument bietet einen umfassenden Überblick über HPC-Leistungskonzepte und Benchmarkingmethoden.
Wichtige Leistungsmetriken
Das Verständnis der grundlegenden Metriken zur Messung der HPC-Systemleistung ist für eine sinnvolle Systembewertung und -vergleich unerlässlich. Sie stellen objektive Messungen für den Vergleich bereit, identifizieren Systemengpässe und ermöglichen so die Leistungsoptimierung und helfen dabei, die Anwendungsleistung vorherzusagen. Die Leistung
Die Rechenfunktionen von HPC-Systemen werden durch verschiedene Metriken gemessen, die ihre Fähigkeit zum Ausführen von Berechnungen und Anweisungen quantifizieren.
- FLOPS (Gleitkommavorgänge pro Sekunde): misst die reine Rechenleistung eines Systems
- Spitzenleistung: Theoretische Höchstleistung, die vom System erreicht werden kann
- Nachhaltige Leistung: Die tatsächliche Leistung, die bei realen Vorgängen erzielt wurde
- IPS (Anweisungen pro Sekunde): Rate, mit der ein Prozessor Anweisungen ausführt
Benchmarkkategorien
Verschiedene Arten von Benchmarks dienen verschiedenen Zwecken bei der Bewertung der Systemleistung, vom Testen bestimmter Komponenten bis hin zur Bewertung der realen Anwendungsleistung.
Synthetische Benchmarks (Testen bestimmter Systemkomponenten oder Merkmale) |
Anwendungsbenchmarks (Reale Anwendungen oder ihre Proxys) |
Kernelbenchmarks (Kleine, eigenständige Teile von Anwendungen) |
---|---|---|
STREAM (Arbeitsspeicherbandbreite) | Wetterforschung und Wettervorhersage (WRF) | Parallele NAS-Benchmarks |
Intel MPI Benchmarks (Netzwerkleistung) | GROMACS (molekulare Dynamik) | DOE CORAL-Benchmarks |
LINPACK (dichte lineare Algebra) | NAMD (molekulare Dynamik) | ECP-Proxyanwendungen |
HPCG (dünne lineare Algebra) | MILC (Quantenchromodynamik) |
Leistungsanalysemethoden
Verschiedene Techniken werden verwendet, um detaillierte Leistungsdaten zu sammeln und Engpässe in HPC-Systemen und -Anwendungen zu identifizieren. Die am häufigsten verwendeten Methoden sind Profiling , wobei sie Laufzeitdaten sammelt, um Programmverhalten und Ressourcennutzungsmuster zu verstehen, Ablaufverfolgungsmethode , in der sie details zeitliche Informationen zur Programmausführung und zum Systemverhalten für eine eingehende Analyse erfasst.
Profilerstellung
- Zeitbasierte Profilerstellung: Stichprobenentnahme des Programmzählers in regelmäßigen Abständen
- Ereignisbasierte Profilerstellung: Sammeln von Hardwarezählerdaten
- Kommunikationsprofilerstellung: Analysieren von Nachrichtenmustern und Zeitangaben
- E/A-Profilerstellung: Messung der Dateisystemleistung
Nachverfolgung
- Zeitachsenanalyse: Aufzeichnen des zeitlichen Verhaltens von Ereignissen
- Nachrichtenablaufverfolgung: Analysieren von Kommunikationsmustern
- Ablaufverfolgung von Hardwarezählern: Aufzeichnen von Hardwareereignissen im Zeitverlauf
Techniken zur Leistungsoptimierung
Diese Strategien helfen dabei, die Systemeffizienz und Anwendungsleistung in verschiedenen Aspekten von HPC-Systemen zu maximieren. Die effektivsten Techniken kombinieren in der Regel Elemente aus allen drei Kategorien und schaffen eine ausgewogene Optimierungsstrategie, die die Leistungsmerkmale des gesamten Systems berücksichtigt. Erfolg kommt häufig aus der Identifizierung, welche Kombination dieser Techniken am besten mit Ihrer spezifischen Anwendungs- und Systemarchitektur übereinstimmt.
Bewährte Methoden für Benchmarking
Es folgen bewährte Benchmarking-Verfahren für zuverlässige und reproduzierbare Leistungsmessungen.
Methodologie
- So definieren Sie klare Ziele und Metriken
- Repräsentative Benchmarks auswählen
- Sicherstellen konsistenter Testbedingungen
- Dokumentieren aller Testparameter
- Ausführen mehrerer Läufe für statistische Gültigkeit
Häufige Fallstricke, die vermieden werden sollen
- Unzureichende Aufwärmzeiten
- Inkonsistente Compileroptionen
- Unzureichende Stichprobengrößen
- Unrealistische Eingabedatensätze
- Systemvariabilität ignorieren
Berichtsanforderungen
- Systemkonfigurationsdetails'
- Softwarestapelinformationen
- Benchmarkparameter
- Rohergebnisse und statistische Analysen
- Umweltbedingungen
- Optimierungseinstellungen