Automatische Vektorisierung
Da die hohe Rechenleistung der Convex nur bei ausgiebiger Verwendung der
Vektor-Einheiten genutzt werden kann, ist die Vektorisierung, d.h. die
Umwandlung des Codes in eine Form, in der Vektor-Befehle eingesetzt werden,
der wichtigste Schritt bei der Optimierung. Zum Glück wird einem diese
Aufgabe weitgehend von den Compilern abgenommen, die ab der
Optimierungsstufe -O2 neben den skalaren Optimierungen der Stufen -O0 und
-O1 umfangreiche Umformungen vornehmen, um möglichst viele Schleifen
vektorisieren zu können.13 In diesem Abschnitt wollen wir uns ansehen, welche Programm-Konstruktionen
der Compiler automatisch in Vektorcode umwandeln kann bzw. welche die
Vektorisierung verhindern.
Unterabschnitte
Peter Junglas 18.10.1993