Leistung von C++-Anwendungen: Optimierung, Profiling und Code-Beschleunigung
300 Seiten
German
PDF
4.5

Leistung von C++-Anwendungen: Optimierung, Profiling und Code-Beschleunigung

Leistung von C++-Anwendungen: Optimierung, Profiling und Code-Beschleunigung

Autor:

Jahr:

Zusammenfassung:

Moderne C++-Anwendungen stehen vor ständig steigenden Anforderungen an Geschwindigkeit und Effizienz. Das Buch „Leistung von C++-Anwendungen“ ist ein praktischer Leitfaden, der Ihnen hilft, „einfach funktionierenden“ Code in eine hochleistungsfähige Lösung zu verwandeln. Der Autor, Alexei Petrov, teilt bewährte Techniken und Strategien, die von führenden Entwicklern von Spiele-Engines, Finanzsystemen und hochbelasteten Servern verwendet werden.



Worum geht es in diesem Buch?

Dies ist keine Sammlung abstrakter Ratschläge. Sie durchlaufen den gesamten Zyklus der Leistungsoptimierung: von der Erkennung von Engpässen mit Profilern (perf, Valgrind, Intel VTune) bis zur Anwendung von Low-Level-Optimierungen. Besonderes Augenmerk wird gelegt auf:



  • Speicherverwaltung: Allokatoren, Cache-Fehltritte, Datenausrichtung und Objektpools.
  • Multithreading und Nebenläufigkeit: Minimierung von Sperren, Lock-freie Strukturen, atomare Operationen.
  • Optimierung von Algorithmen und Datenstrukturen: von der Containerauswahl bis zur Nutzung von SIMD-Instruktionen.
  • Compiler-Optimierungen: wie man Code schreibt, der mit dem Optimierer harmoniert (RVO, constexpr, Attribute).
  • Profiling und Benchmarking: wie man Messfehler vermeidet und Ergebnisse interpretiert.


Für wen ist dieses Buch?

  • C++-Entwickler, die die Leistung ihrer Projekte steigern möchten.
  • Ingenieure, die an Spielen, hochbelasteten Servern, Embedded-Systemen oder Finanzanwendungen arbeiten.
  • Studenten und Fachleute, die von „Übungs“-Code zu Produktionslösungen übergehen.


Was werden Sie lernen?

Nach der Lektüre werden Sie in der Lage sein:

  • „Flaschenhälse“ im C++-Code zu finden und zu beseitigen.
  • Code zu schreiben, der den Prozessor-Cache und Speicher effizient nutzt.
  • Multithreading-Systeme ohne Datenkonflikte und Deadlocks zu entwerfen.
  • Moderne C++17/20-Funktionen zur Beschleunigung von Berechnungen anzuwenden.
  • Die Leistung korrekt zu messen und häufige Benchmarking-Fehler zu vermeiden.


Das Buch enthält zahlreiche Beispiele, gebrauchsfertige Code-Snippets und Checklisten für das Code-Audit. Es ist ein Nachschlagewerk, zu dem Sie bei jeder Refaktorisierung oder Optimierung zurückkehren werden.



Hinweis: Das Buch setzt sichere Kenntnisse der C++-Syntax und grundlegender OOP-Konzepte voraus. Wenn Sie gerade erst anfangen, die Sprache zu lernen, empfehlen wir, zuerst die Grundlagen zu erlernen.

Empfehlungen