News Bulldozer-Patch für Windows 7 nicht der Weisheit letzter Schluss

Nero24

Administrator
Teammitglied
Mitglied seit
01.07.2000
Beiträge
24.066
Renomée
10.446
  • BOINC Pentathlon 2019
  • BOINC Pentathlon 2020
  • BOINC Pentathlon 2018
  • BOINC Pentathlon 2021
Am heutigen Tage hat Microsoft für das Betriebssystem Windows 7 einen <a href="http://www.planet3dnow.de/cgi-bin/newspub/viewnews.cgi?category=1&id=1323973078">Hotfix veröffentlicht</a>, der die Probleme beheben soll, die sein jüngstes OS in Kombination mit einem AMD FX-Prozessor hat, die Lasten optimal auf die in Modulbauweise gefertigten Kerne zu verteilen, sodass am Ende die optimale Leistung dabei herauskommt. Bereits im Vorfeld der AMD FX "Bulldozer" Präsentation hatte AMD darauf hingewiesen, dass der Scheduler von Windows 7, der die Prozesse bzw. die Threads auf die vorhandenen Kerne verteilt, suboptimal arbeitet für den Bulldozer.

<center><img src="http://www.planet3dnow.de/vbulletin/attachment.php?attachmentid=24403&stc=1&d=1323988124" border="1" alt=""></center>

Wie man sieht ist Windows 7 die Modulbauweise und das <a href="http://www.planet3dnow.de/vbulletin/showthread.php?t=399118">CMT-Multithreading</a> des Bulldozers nicht bekannt, verteilt die Threads wahllos wie bei einem herkömmlichen Multi-Core Prozessor. Als Folge davon kann der Turbo-Modus nie einzelne Kerne optimal beschleunigen und die Stromsparfeatures nie ganze Teilsegmente zweck niedrigerem Stromverbrauch stilllegen. Der Scheduler von Windows 8 dagegen soll das bereits berücksichtigen. Einige Publikationen haben das bereits nachgewiesen, wir selber hatten in <a href="http://www.planet3dnow.de/vbulletin/showthread.php?t=399114">unserem Review</a> noch keine Gelegenheit, Tests auf Windows 8 durchzuführen.

Der heute von Microsoft veröffentlichte Hotfix für den Scheduler soll das Zuordnungsproblem der Threads nun dahingehend lösen, dass der Bulldozer nicht mehr als Prozessor mit 8 gleichberechtigten Kernen verwaltet wird, sondern als Quad-Core Prozessor mit <a href="http://www.planet3dnow.de/vbulletin/showthread.php?t=352950&garpg=9">Simultaneous Multi-Threading "SMT"</a>, so wie die Intel Core i7 Prozessoren zum Beispiel.

Leider ist unser regulärer AMD FX gerade zu Grafiktests in Deutschland unterwegs, sodass uns unsere Referenzplattform für einen Test nicht zur Verfügung steht. Daher muss hier ein privater AMD FX-6100, ein 6-Kerner (3-Moduler) mit 3,3 GHz Basis- und 3,9 GHz Turbo-Takt, als Versuchskaninchen herhalten. Auf die Schnelle daher ein paar Benchmarks, wo wir der Meinung waren, dass eventuelle Verbesserungen am deutlichsten sichtbar sein könnten:

<center><img src="http://www.planet3dnow.de/vbulletin/attachment.php?attachmentid=24404&stc=1&d=1323988658" border="1" alt=""></center>

Die Werte sind alarmierend! Auf Basis dieses Ergebnisses können wir zum aktuellen Zeitpunkt nur eindringlich davor warnen, den Hotfix KB2592546 zu installieren. Die Leistung steigt weder bei Single-, noch bei Multithreading-Anwendungen. Teilweise fallen die Resultate sogar erheblich schlechter aus!

Bei kurzem logischen Nachdenken wird auch klar wieso. Der Versuch, mehr Leistung aus dem Bulldozer zu holen, indem man ihn wie einen Prozessor mit SMT alias HyperThreading behandelt, muss scheitern. Bei einem HyperThreading-Prozessor teilen sich zwei logische Kerne einen physischen. Das heißt, der Scheduler versucht zu vermeiden, dass Threads auf zwei logischen Kernen eines echten Kerns laufen und verteilt sie falls möglich lieber auf zwei echte Kerne. Beim Bulldozer jedoch - siehe AMDs Grafik oben - wäre es ausdrücklich erwünscht, dass die Threads innerhalb eines Moduls laufen, damit der Turbo aktiviert wird, die Threads den shared L2-Cache nutzen können und der Rest schlafen gelegt werden kann. Der Patch geht also genau in die falsche Richtung.

So bleibt aktuell nur zu sagen: Ziel verfehlt, Patch bitte umgehend wieder zurückziehen und die Sache nochmal durchdenken!

<b>Update 1</b>
Auf Leserwunsch wurde noch ein Benchmark gefahren mit extrem FPU-lastiger Auslegung in Kombination mit wenig Threads.

<B>Windows 7 SP1 Original:</B>
<img src="http://www.planet3dnow.de/vbulletin/attachment.php?attachmentid=24405&stc=1&d=1323994459" border="0" alt="">

<B>Windows 7 SP1 Bulldozer-Scheduler-Hotfix:</B>
<img src="http://www.planet3dnow.de/vbulletin/attachment.php?attachmentid=24406&stc=1&d=1323994459" border="0" alt="">

Der Turbo-Modus war in beiden Fällen an und es wurde davon abgesehen, Threads auf irgendwelchen Kernen oder Modulen festzupinnen, da dies auch der normale User nie tun wird.

Hier - da extrem SIMD/FPU-lastig - bringt der Scheduler-Patch in der Tat etwas. Aber lohnt es sich, hier auf der FPU/SIMD-Seite 4000 statt 3900 Kiloknoten/s mitzunehmen, wenn auf der anderen Seite (INT/ALU) 2200 statt 3300 KB/s zu Buche stehen?!

<b>Links zum Thema:</b><ul><li><a href="http://www.planet3dnow.de/cgi-bin/newspub/viewnews.cgi?category=1&id=1323973078">Microsoft veröffentlicht Bulldozer-Patch für Windows 7</a></li><li><a href="http://www.planet3dnow.de/vbulletin/showthread.php?t=399114">AMD FX - Codename "Bulldozer" Test</a></li></ul>
 
Deinen Kurztest in allen Ehren, aber ich finde es ein wenig früh und vorschnell den Patch in Gänze zu verurteilen.

Wir sehen klar, dass in MT-Anwendungen die Leistung deutlich abnimmt und das ist natürlich klar nicht gewollt. Aber es gibt natürlich noch andere Bereiche, Benchmarks und Anwendungen (z.B. Spiele) die u.U. profitieren könnten.

Ich denke man sollte noch ein paar Tests machen, vergleichen und dann abwägen ob der Patch eher schadet, positive Ergebnisse zu Tage fördert oder nur mit Einschränkungen empfehlenswert ist.

Bei ausgewählten Spielen zum Beispiel scheint es nämlich durchaus positive Effekte zu geben.

http://www.overclock.net/t/1185039/...r-patch-results-are-in-have-fun#post_15952777
 
Versucht man da krampfhaft mit Hilfe der missratenen Planierraupe AMD dem Boden gleich zu machen?
 
Der Witz ist ja, dass ein Aufteilen der Threads auf Turbomax ca. 20 % Performance durch geteilte Modulressourcen kosten kann. Wenn dann z.B. 3 Threads vorher mit 3CU/3C liefen auf 3,9 GHz und jetzt auf 4,2 GHz und 2CU/3C, dann hat man außer einer drastischen Energieverbrauchserhöhung nichts gewonnen. Ganz so einfach ist das nicht.
Der Scheduler sollte nämlich je nach Anwendnungsfall entweder auf Turbomax oder CU/C max aufteilen.

Ob das der Patch auch kann, testet man am Besten mit Fritz Chess Benchmark!!!!

Bringt ein Festpinnen von 2 (oder 4) Threads auf 2CU/C2 (oder 4CU/4C) die gleiche Leistung wie ohne Festpinnen, dann ist der Scheduler intelligent. Verteilt er die 2 oder 4 Threads nur so, dass der Turbo maximiert wird, dann ist er doof. Der von mir getestete Fall, brachte unter Win8 maximale Punktzahl ohne Festpinnen. Leider hab ich das Gerät jetzt nicht mehr.
 
Das Zeug brauch ich auch mal, warum versucht man den Bulli wie einen intel HTT zu verarzten... :D ??
 
@deadohiosky:
Spiele interessieren mich in diesem Fall nicht, da es sich um einen Prozessor-Patch handelt. Wenn der Patch aber in gängigen CPU-lastigen Benchmarks und Praxistests derart mies abschneidet, dann hat er einfach keine Berechtigung.
Und im letzten Absatz versuche ich auch zu erläutern, weshalb das so nicht funktionieren kann!

@Herr Melin
Das ist das Problem. Im Sinne der INT/ALU-Performance wäre es wünschenswert, dass zwei Threads innerhalb eines Moduls laufen, damit sie a.) den Turbo-Mode genießen können, b.) den shared L2-Cache gemeinsam nutzen können und c.) der Rest schlafen gelegt werden kann. Bei FPU-Threads dagegen wäre genau das Gegenteil wünschenswert; also so, wie es der Patch macht. Da der Bulldozer nur eine FPU je Modul hat, wäre hier die Aufteilung der Threads auf je die unterschiedlichen Module gefragt. Da frag ich mich aber, wieso der XviD-Test nicht davon profitiert. MPEG4-Encoding Geschichten sollten doch eigentlich bevorzugt über FPU oder SIMD laufen.
Ich bezweifle aber, ob ein OS-Scheduler jemals wird erkennen können, ob ein Thread gerade bevorzugt ALU/INT-Befehle ausführt, oder FPU/SIMD-Befehle, sodass sich die Frage stellt, ob ein Scheduler-Patch überhaupt sinnvoll ist.

@kalkzone
den Core i3/i7 wird der Patch nicht interessieren. Diese CPUs werden ja schon als SMT-Prozessoren behandelt - was auch kein Problem ist, da sie welche sind. ;)

Der Core i3/i7 ist ein SMT-Prozessor, wurde von Windows 7 als solcher erkannt und als solcher behandelt - egal ob mit Hotfix oder ohne.

Der Bulldozer ist ein CMT-Prozessor, wurde von Windows 7 aber bisher als herkömmlicher Multi-Core-Prozessor handelt und mit dem Patch jetzt als SMT-Prozessor. Es ist also Jacke wie Hose, in dem Fall aber verkehrt! *nein*
 
@Herr Melin
Das ist das Problem. Im Sinne der INT/ALU-Performance wäre es wünschenswert, dass zwei Threads innerhalb eines Moduls laufen, damit sie a.) den Turbo-Mode genießen können, b.) den shared L2-Cache gemeinsam nutzen können und c.) der Rest schlafen gelegt werden kann. Bei FPU-Threads dagegen wäre genau das Gegenteil wünschenswert; also so, wie es der Patch macht. Da der Bulldozer nur eine FPU je Modul hat, wäre hier die Aufteilung der Threads auf je die unterschiedlichen Module gefragt. Da frag ich mich aber, wieso der XviD-Test nicht davon profitiert. MPEG4-Encoding Geschichten sollten doch eigentlich bevorzugt über FPU oder SIMD laufen.
Ich bezweifle aber, ob ein OS-Scheduler jemals wird erkennen können, ob ein Thread gerade bevorzugt ALU/INT-Befehle ausführt, oder FPU/SIMD-Befehle, sodass sich die Frage stellt, ob ein Scheduler-Patch überhaupt sinnvoll ist.

Dazu noch einmal meine Ausführung aus dem Zambezi Fehler Thread, getestet mit einem FX-6100:

"Fritz Chess Benchmark 2 Threads, Turbo ein, Threads nicht festgepinnt:
3594 Punkte

Threads auf 0,2=2CU/2C festgepinnt, Turbo an
4138 Punkte

Threads auf 0,1=1CU/2C festgepinnt, Turbo an
3233 Punkte

Threads auf 0,2=2CU/2C festgepinnt, Turbo aus
3670 Punkte

Threads auf 0,2=2CU/2C festgepinnt, Turbo aus und fest auf Turbotakt übertaktet
4317 Punkte

Win8, Threads nicht festgepinnt, Turbo aus und fest auf Turbotakt übertaktet
4467 Punkte (es arbeiten mehr als 3 Kerne an 2 Threads lt. Taskmanager)

Win8, Threads festgepinnt, Turbo aus und fest auf Turbotakt übertaktet
4260 Punkte

1. man sieht wie dämlich der Windows 7 Scheduler agiert, er verschenkt ggü. dem besten festgepinnten Fall 544 Punkte (15 %)
2. 1CU/2C Problem, bereits hinreichend besprochen
3. fest übertakten ist nochmals 179 Punkte effektiver (>4%)
4. Windows 8 Scheduler agiert sehr effektiv
5. Zwischen schlechtestem und besten Fall liegen 20 % Performanceunterschied, die Bulldozer mal hier und mal da abruft, wenn man unter Windows 7 selbst Hand anlegt."

Wenn jetzt noch einmal bitte jemand den FX-6 mit Patch und Fritz Chess testen würde , hätten wir den Vergleich und die Auflösung ob das Teil Win8 vorwegnimmt oder nicht.
 
Bei kurzem logischen Nachdenken wird auch klar wieso. Der Versuch, mehr Leistung aus dem Bulldozer zu holen, indem man ihn wie einen Prozessor mit SMT alias HyperThreading behandelt, muss scheitern. Bei einem HyperThreading-Prozessor teilen sich zwei logische Kerne einen physischen. Das heißt, der Scheduler versucht zu vermeiden, dass Threads auf zwei logischen Kernen eines echten Kerns laufen und verteilt sie falls möglich lieber auf zwei echte Kerne. Beim Bulldozer jedoch - siehe AMDs Grafik oben - wäre es ausdrücklich erwünscht, dass die Threads innerhalb eines Moduls laufen, damit der Turbo aktiviert wird, die Threads den shared L2-Cache nutzen können und der Rest schlafen gelegt werden kann. Der Patch geht also genau in die falsche Richtung.

So bleibt aktuell nur zu sagen: Ziel verfehlt, Patch bitte umgehend wieder zurückziehen und die Sache nochmal durchdenken!
Weißt du wirklich, wie der Patch arbeitet? Die Ergebnisse, die du gemessen hast, unterstützen diese Vermutung. Aber an sich ist der Weg nicht unbedingt falsch. Es kommt nur darauf an, was man vom BD als einen SMT-Kern ansieht. Wenn man es so aufzieht, dass die Module als SMT-Kern angesehen werden, die Kerne im Modul aber als einzelne Kerne, würde die Idee in die richtige Richtung laufen. Ob das überhaupt so einfach machbar ist, will ich mangels Wissen über den Windows-Scheduler aber nicht beurteilen.
 
Wenn jetzt noch einmal bitte jemand den FX-6 mit Patch und Fritz Chess testen würde , hätten wir den Vergleich und die Auflösung ob das Teil Win8 vorwegnimmt oder nicht.
Ich habe Deiner Bitte entsprochen und den FX-6100 mit Fritz Chess getestet:

Windows 7 SP1 Original:
attachment.php


Windows 7 SP1 Bulldozer-Scheduler-Hotfix:
attachment.php


Der Turbo-Modus war in beiden Fällen an und es wurde davon abgesehen, Threads auf irgendwelchen Kernen oder Modulen festzupinnen, da dies auch der normale User nie tun wird.

Hier - da extrem SIMD/FPU-lastig - bringt der Scheduler-Patch in der Tat etwas; wie in meinem letzten Posting postuliert. Aber lohnt es sich, hier auf der FPU/SIMD-Seite 4000 statt 3900 Kiloknoten/s mitzunehmen, wenn auf der anderen Seite (INT/ALU) 2200 statt 3300 KB/s zu Buche stehen?!
 
Ich habe Deiner Bitte entsprochen und den Bulldozer mit Fritz Chess getestet
Vielen Dank!!!

Fragt sich nur, wie ich auf 3.600 Punkte kam, egal. Man kann manche Benches auch x-mal wiederholen und bekommt jedes Mal andere Ergebnisse mit diesem Lottoscheduler.
Das Festpinnen bitte so verstehen, dass man ja erst einmal wissen möchte, wie der allerbeste Fall ist. Und ob der Scheduler weiss dass es dieses Fall gibt und sich ähnlich verhält. Realistisch ist das nicht, dient nur der Aufklärung ob intelligent oder nicht.

Ob Winrar einen Spezialfall darstellt, wo 2 Kerne wirklich parallel an einer Aufgabe aus dem RAM und Cache arbeiten? Evtl. ist es in der Vielzahl der Fälle ja eher so, dass Aufgaben getrennt voneinander berechnet werden und auch keine Teilergebnisse untereinander gefragt sind(Cinebench mit verschiedenen Kacheln, Spiele mit KI und 3d, Fritz mit versch. Spielzügen).
 
Zuletzt bearbeitet:
ich war doch schon froh als in den ersten verlinkten Test - es keine 'Verschlimmbesserung' gab - sprich keinen negativen Einfluss auf die Performance.

Dies scheint aber nun mitnichten immer so zu zutreffen...schade.

Aber es ist noch nicht der finale Patch und ganz wirkungslos ist er niicht.
Die Warnung den Patch in dieser Form einzusetzen geht doch auch voellig in Ordnung - man warte hier lieber die finale Version ab - was auch in dem urspruenglichen Artikel gesagt wurde.

Hier will niemand AMD 'platt' machen - aber wenn etwas nicht funzt - dann darf man das auch sagen.
 
Wunder darf man nicht erwarten. Die gibt es nur hier http://vatikan.va.
.
EDIT :
.

[..]
Aber lohnt es sich, hier auf der FPU/SIMD-Seite 4000 statt 3900 Kiloknoten/s mitzunehmen, wenn auf der anderen Seite (INT/ALU) 2200 statt 3300 KB/s zu Buche stehen?!

Ja, das lohnt sich! Es kommt eben darauf an, was man tun möchte. Wenn ich mit "Bulldozer" rechnen möchte, dann ist es mir lieber, ich opfere ein paar Punkte im Bereich der Ganzzahlarithmetik und verlagere diese in den Bereich Fließkommaleistung.
Hier zeigt sich scheinbar, daß es beim BD keinen "goldenen Mittelweg" gibt. Aber warten wir mal ab, eventuell bessert Windows-Macher MS nach.
 
Den allgemeinen Tenor können wir (leider) nur bestätigen. Im Mittel über alle unsere Benchmarks bringt es rein gar nix.
http://ht4u.net/news/24857_patch_so...ws_7_beschleunigen_-_ergebnisse_enttaeuschen/

Manche Anwendungen reagieren ganz positiv auf den Patch (PCMark7, ScienceMark, Mafia II), andere dagegen sogar negativ (WinRar, 7-Zip). Bei WinRAR packen wir ein echtes Archiv, also kein Benchmark. Man sieht also, selbst mit gleicher Anwendung kann der Patch gut sein (P3DNow) oder weniger gut (HT4U).

Grüße
Fabian
 
Für die FX-Reihe wäre es wünschenswert, einen Sheduler-Umschalter in der Systemsteuerung oder im Overdrive-Tool zu haben. Wenigstens könnte man dann individuell auswählen, ob man Mehrverbrauch oder Energieeffizienz, Mehrleistung oder je nach Anwendung auch Leistungseinbußen möchte.

Vielleicht liefert ein weiterer Microsoft-Patch ja noch eine Automatik, die das Lastszenario analysiert und die passende Shedulerstrategie automatisch wählt?

*noahnung*

Das könnte Microsoft man dann sogar mit der Energiesparvorgabe koppeln und bei Vorgabe "Höchstleistung" auf Leistung, bei Vorgabe "minimaler Verbrauch" auf Energieeffizienz antizipieren.
 
Hi, hab den Patch auch mal probiert und war ebenso vom WinRAR Ergebniss enttäuscht. [~2.400)
Hab bisher nicht viel getestet, unter anderem Sisoftwar Sandra und den Fritz Schach Benchmark.
Bei Sandra der Energieffizienz Benchmark liefert hier beeindruckende Werte, bei 1,4GHz werden 81GFlop/s erreicht. Das ist Platz 1 in dieser Kategorie. :o

Ich werd den Hotfix noch ein wenig testen am WE, wenn er zuviel ärger macht fliegt er wieder runter.

MfG
 
Zuletzt bearbeitet:
Das Ergebnis überrascht mich nicht. Wer jemals etwas mit Softwareentwicklung zu tun hat weiß das man ein rund laufendes System nicht aus dem Ärmel schütteln kann.
Die Implementierung wird einige Anläufe brauchen und lebt vom Feedback der User.
Anders gesagt, sie reift beim Kunden. Die ganzen möglichen Konstellationen nachzustellen, das noch in wenigen Wochen, ist nahezu unmöglich.
Ich bin davon überzeugt, BD wird sein Potential softwaretechnisch erst in 12 Monaten ausschöpfen können.
 
Interessant währe mal ein vergleich ohne Turbo bei fixem Takt mit und ohne Patch. Ansonsten naja die Singel Threaded Leistung ist und bleibt Unterirdisch.
 
Na dann bringt der Patch ja auf einem UV Llanosystem (A8-3410MX) mehr als für BD.
Die Perf steigt bei Chinebench 11.5 mit 4T@1.6+Turbo von 1.68 auf 1.74-1.89. wohingegen 8T@1.6+Turbo bei gleichen Bedingungen von 2.01 auf 1.90-1.89 herunterkommt.

Wobei eigentlich die Steigerung bei Standardeinstellungen mit einem Plus von bis 12.5% nicht schlecht ist. Der erste Wert mit 1.74 scheint durch irgendein Hintergrundprogramm entstanden zusein, alle anderen 3 Durchläufe waren durchwegs zwischen 1.85-1.89.

EDIT: 3DMark06 bleibt beim CPU score bei ca. 2390. Wobei die GPU-Werte sich fast halbieren das kann hingegen an dem Treiber 11.11 vs. 11.12 liegen.

EDIT: DA scheint irgendwas auf meinem System nicht zu Funktionieren, den andere haben deutlich höhere werte bei Meiner APU getestet.
 
Zuletzt bearbeitet:
Nun hoffen wir mal, dass der Patch dann nicht irgendein Schindluder treibt und die "Messergebnisse" von Cinebench und Co. "verunreinigt".

Dahingehend fände ich es interessant, falls der Leistungszuwachs wirklich real ist, was Llano und u.U. auch andere AMD-CPUs ausgebremst hat.:]
 
Zurück
Oben Unten