Diese Fragen dienen der persönlichen Beschäftigung mit der Thematik, werden aber nicht separat in der Vorlesung besprochen.
Eine kommentierte und handverlesene Liste mit weiterführender Literatur zum Thema. Die Auswahl ist zwangsläufig subjektiv.
Codeoptimierung ist insofern ein schwieriges Thema, als dass der Erfolg konkreter Strategien sehr von den jeweiligen Umständen abhängt. Deshalb ist es sinnvoll, sich auf das allgemeine Vorgehen zu konzentrieren. Eine recht ausführliche Beschreibung der allgemeinen Herangehensweise inklusive deutlicher Warnungen findet sich in Kapitel 25 in {[mcconnell-s-2004]}. Das anschließende Kapitel 26 beschreibt dann eine ganze Reihe konkreter Optimierungstechniken inklusive der Vergleiche für jeweils mehrere Programmiersprachen.
Weitere Beispiele für allgemeine Beschreibungen des Problems und Vorgehens bei Codeoptimierung, jeweils mit Beispielen für konkrete Techniken, finden sich in Kapitel 12 in {[raymond-es-2004]} und in Kapitel 7 in {[kernighan-bw-1999]}. Eine gute Einführung in die O-Notation für die Komplexität von Algorithmen liefert Abschnitt 32, S. 177ff. in {[hunt-a-1999]}.
Kapitel 12 in {[scopatz-a-2015]} befasst sich mit Parallelisierung als Spezialgebiet der Steigerung der Ausführungsgeschwindigkeit, die für manche Aspekte in den Naturwissenschaften durchaus von Belang sein kann, Abschnitt „Performancetests“ in Kapitel 16 in {[passig-k-2013]} gibt eine kurze deutschsprachige Einführung in die Thematik.
Eine Übersicht über die Komplexität mathematischer Operationen findet sich in der englischsprachigen Wikipedia.
<bibtex bibliography> sort=true </bibtex>