Vorwort
Wenn du an Hochleistungsrechner denkst, stellst du dir vielleicht riesige Cluster von Maschinen vor, die komplexe Wetterphänomene modellieren oder versuchen, Signale in Daten zu verstehen, die über ferne Sterne gesammelt werden. Es ist leicht anzunehmen, dass sich nur Leute, die spezialisierte Systeme bauen, Gedanken über die Leistungsmerkmale ihres Codes machen sollten. Wenn du dieses Buch in die Hand nimmst, hast du bereits einen Schritt getan, um die Theorie und Praxis zu lernen, die du brauchst, um hochleistungsfähigen Code zu schreiben. Jeder Programmierer kann davon profitieren, wenn er versteht, wie man performante Systeme baut.
Es gibt eine ganze Reihe von Anwendungen, die an der Grenze des Machbaren liegen und die du nicht erreichen kannst, ohne optimal performanten Code zu schreiben. Wenn das deine Praxis ist, bist du hier genau richtig. Aber es gibt noch eine viel größere Anzahl von Anwendungen, die von performantem Code profitieren können.
Wir denken oft, dass neue technische Möglichkeiten die Innovation vorantreiben, aber ich bin genauso angetan von Möglichkeiten, die die Zugänglichkeit von Technologien um Größenordnungen verbessern. Wenn etwas zehnmal billiger wird, was den Zeitaufwand oder die Rechenkosten angeht, ist die Zahl der Anwendungen, die du ansprechen kannst, plötzlich größer, als du es dir vorgestellt hast.
Das erste Mal, dass sich dieses Prinzip in meiner eigenen Arbeit manifestierte, war vor über zehn Jahren, als ich bei einem Social-Media-Unternehmen ...