Hat sich ja Jahrelang an der Architektur nichts getan. Vom 28nm-Prozess ganz zu schweigen.
Bei den Chipsätzen war aber auch lange keine wirklich Änderung nötig. Der 990fx hatte von Anfang an so viel Kapazität, dass er ohne Probleme auf neue Bedingungen angepasst werden konnte, wie zB USB3, mehr SATAs, mehr Grafikkarten ...
Aber auch mit neuem FM3+ Sockel. Bin ja auch schon gespannt wie die im Vergleich zu Intel stehen. Vielleicht sind die Sprünge zwischen den Generationen dann auch bei Intel wieder etwas höher.
Ich habe auch Hoffnungen, aber aktuell kann man leider nur spekulieren.
Weil ein Thread die Integer-ALU nutzen kann, während ein anderer Floatberechnungen macht. Aber: Welche (Hausüblichen) Programme können 8 Prozesse sinnvoll auslasten? Für Videobearbeitung gibt es ja immer noch AVX2, wo der FX auch kein Land mehr sieht.
ALU und FPU gleichzeitig auf verschiedenen Threads zu nutzen ist theoretisch möglich, aber sehr schwierig. Es gibt kaum Programme, die sich auf eines von beidem beschränken. Im Allgemeinen ist das auch nicht der Sinn von HyperThreading, sondern durch doppelt vorhandene Speicher im Falle eines Cache-Misses schnell mal eine andere Aufgabe einschieben zu können, ohne dafür erst die Daten anfordern zu müssen (was das Verfahren ad absurdum führen würde).
Es werden sozusagen zwei Threads in die beiden Speicher geladen, und wenn einer von beiden eine unvorhergesehen Wartezeit hat, kann in dieser Zeit der andere ausgeführt werden.
Das macht sehr viel Sinn bei schlecht optimierter Software oder vielen kleinen Prozessen, da man dadurch die Wartezeit der CPU minimiert, sie also effizienter ausnutzt.
Aber am Ende läuft eben doch immer nur ein Thread gleichzeitig auf einem Prozessorkern, weshalb es bei gut optimierten Aufgaben (=wenig Wartezeit) auch keinen Nutzen mehr bringt.
Unterm Strich eine wirklich gute Idee, die quasi die Fehler des Betriebssystems oder des Programms ausgleichen kann. Aber eben nicht so effektiv wie echte Kerne.
Bei Modulen hingegen hast du die viel genutzten Abteilungen der CPU eben wirklich doppelt und kannst sie auch gleichzeitig nutzen.
Das Problem liegt dort eher bei AMDs deutlich ineffektiverer Architektur und dem Problem, dass viele Programme selbst im Jahre 2015 noch immer sehr schlecht multikernoptimiert werden.
Natürlich ist der Kernel von Windows auch nicht gerade effizient und gut für Multithreading optimiert.
Wenn meine Videos rendern, kann ich auswählen wieviele Prozesse dafür erzeugt werden sollen, somit kann ich das sehr gut verteilen. Natürlich ist es nicht möglich, jede Aufgabe perfekt auf eine beliebige Anzahl von Prozessen zu verteilen, aber im Allgemeinen funktioniert das sehr gut mit einer mittleren Effizienz von etwa 90%. Gut genug um wirklich einen Nutzen zu bringen.
Aber ich rendere auch auf einem Echtzeitkernel von Linux, da kann man davon ausgehen dass zumindest das Betriebssystem weiß wie es die Kerne richtig benutzen soll.