Vor den 70er Jahren konnten Prozessoren im Prinzip nur Integer Zahlen verarbeiten. Wollte man mit Kommazahlen rechnen, so musste man dies auf Integer Operationen herunterbrechen. Gleichzeitig führte dies auch dazu, dass jede Firma ihre eigene binäre Repräsentation einer Kommazahl entwickelte, wodurch die auf den Prozessoren ausgeführten Programme für den jeweiligen Prozessor angepasst sein mussten. Zum einen wurde mit dem IEEE754-Standard ein gemeinsamer Standard für Kommazahlen geschaffen, zum anderen drängte man darauf, damit schneller rechnen zu können. Mit dem Intel 8087 gab es erstmals zukaufbare Koprozessoren, die die Gleitkommaarithmetik übernahmen. In den 70er Jahren wurden dann die ersten SIMD (single instruction multiple data) Befehle eingeführt. Wohlgemerkt auch auf speziell dafür vorgesehener Hardware im Chip. Dies war nur möglich, weil die Chips immer kleiner gefertigt werden konnten. Der Koprozessor wanderte als FPU direkt in die CPU.
Diese Vektorverarbeitung ist genauso ein spezieller Bereich im Chip, der darauf optimiert wurde Vektorarithmetik auszuführen. Bekannt ist dies unter AVX (advanced vector extensions). Mit Haswell wurde AVX zu AVX2 ausgebaut/optimiert.
Besitzt der Compiler die Fähigkeit diese AVX2 Befehle zu nutzen, profitiert die Software. In diesem Fall geht es vor allem um Berechnungen mit Vektoren und Matrizen (Ray Tracing, 3D Modelle,... - nicht die Grafik, das Modell!).
Als Endanwender merkt man davon meist nicht viel.
Grüße
X