also wenn die Herrschaften aus der Softwareentwickelung mal endlich AVX benutzen würden. Wär eine spezielle Steigerung von bis 300% möglich und im Durchschnitt 50 - 70%
AVX und co. bringen allerdings nur bei SIMD irgendwas. Setzt also voraus, dass jedes zu bearbeitende Datenelement mit demselben Code verarbeitet werden kann - geht bei Bildverarbeitung (meist) wunderbar, aber nen Compiler kann man so nicht bauen. Dafür sind viele Datenstrukturen nicht geeignet und meist sind da auch Cache- und Speicherlatenzen mitentscheidend, da muss also auch noch was passieren.
Ansonsten stimmts aber. Kleiner Microbenchmark, 4x4-Single Precision-Matrix-Vektor-Multiplikation auf kleinen Arrays (≤ ½ L1-Cache), ein Kern, taktbereinigt:
100% - K10 (SSE2-128)
126% - Steamroller (AVX-256, kein FMA)
137% - Steamroller (AVX-256, FMA4)
265% - Sandy Bridge (AVX-256, kein FMA)
???% - Haswell (AVX-256, FMA3) - würde mich mal wirklich interessieren, wie der abgehen würde. Faktor 3 halte ich aber für realistisch.
Ich denke, mittelfristig wird die Devise vor allem "add moar coars!!!einseins" sein, wofür AMD immer ausgelacht wurde - was man sich danach ausdenkt, v.a. mit welcher Befehlssatzarchitektur, und wie sich GPU-Computing entwickelt, wird man dann sehen.