Not logged inCSS-Forum
Forum CSS-Online Help Search Login
CSS-Shop Impressum Datenschutz
Up Topic Hauptforen / CSS-Forum / Begegnungen mit und ohne Hyperthreading
- - By Benno Hartwig Date 2014-02-06 22:16
Obwohl es schon so viele Statements dazu gab, obwohl sogar Messergebnisse gepostet wurden
ist mir immer noch nicht richtig klar, ob man auf Hyperthreading-Rechner lieber die reale Kernanzahl oder auch ggf. die doppelte Anzahl einstellen sollte.

Auf einem kleinen Notebook Windows7-64bit mit i3-2377M 1,50 GHz (2 reale Kerne, Hyperthreading) habe ich bei sehr fixen 1m+0,5s mal ein wenig spielen lassen:

1: Houdini_3_x64 Threads4 549,5/1040
2: Houdini_3_x64 Threads2 490,5/1040    --> "Ah, ja, lieber auf die virtuellen Kerne vertrauen!"

1: Critter_1.6_64bit 4core 612,5/1142
2: Critter_1.6_64bit 2core 529,5/1142      --> "Jaaa, virtuelle Kerne sind geil!"

1: Stockfish-dd-64-modern cores2 629,5/1208
2: Stockfish-dd-64-modern cores4 578,5/1208    --> "Äh, oder doch nicht?"

1: Stockfish-dd-64-modern cores4 628,0/1063
2: Critter_1.6_64bit 2core       220,5/532 
3: Critter_1.6_64bit 4core       214,5/531           --> "Hmm, merkwürdig. Aber OK, hier sollte ich länger laufen lassen."

Und jetzt?
Jetzt ist mir irgendwie noch weniger klar, ob oder vielleicht besser wann man virtuelle Kerne nutzen sollte.

Aber vielleicht hat ja auch jemand Lust, z.B. auf seinem i7 einen ähnlichen Test zu fahren. 

Ich habe dies übrigens auf Arena 4.0 gefahren.
Da wurde inzwischen aber mal berichtet von Problemen der Steuerung der Kernanzahl.
Ich habe aber schon bei allen Begegnungen immer wieder mal die CPU-Nutzung kontolliert, und die 2-Kern-Engine kam stets an die 50% CPU, die 4-Kern-Engine lag kurz vor 100%. Die Steuerung war wohl schon ganz OK.

Benno
Parent - - By Stefan Pohl Date 2014-02-07 05:40
Benno Hartwig schrieb:

Obwohl es schon so viele Statements dazu gab, obwohl sogar Messergebnisse gepostet wurden
ist mir immer noch nicht richtig klar, ob man auf Hyperthreading-Rechner lieber die reale Kernanzahl oder auch ggf. die doppelte Anzahl einstellen sollte.

Auf einem kleinen Notebook Windows7-64bit mit i3-2377M 1,50 GHz (2 reale Kerne, Hyperthreading) habe ich bei sehr fixen 1m+0,5s mal ein wenig spielen lassen:

1: Houdini_3_x64 Threads4 549,5/1040
2: Houdini_3_x64 Threads2 490,5/1040    --> "Ah, ja, lieber auf die virtuellen Kerne vertrauen!"

1: Critter_1.6_64bit 4core 612,5/1142
2: Critter_1.6_64bit 2core 529,5/1142      --> "Jaaa, virtuelle Kerne sind geil!"

1: Stockfish-dd-64-modern cores2 629,5/1208
2: Stockfish-dd-64-modern cores4 578,5/1208    --> "Äh, oder doch nicht?"

1: Stockfish-dd-64-modern cores4 628,0/1063
2: Critter_1.6_64bit 2core       220,5/532 
3: Critter_1.6_64bit 4core       214,5/531           --> "Hmm, merkwürdig. Aber OK, hier sollte ich länger laufen lassen."

Und jetzt?
Jetzt ist mir irgendwie noch weniger klar, ob oder vielleicht besser wann man virtuelle Kerne nutzen sollte.

Aber vielleicht hat ja auch jemand Lust, z.B. auf seinem i7 einen ähnlichen Test zu fahren. 

Ich habe dies übrigens auf Arena 4.0 gefahren.
Da wurde inzwischen aber mal berichtet von Problemen der Steuerung der Kernanzahl.
Ich habe aber schon bei allen Begegnungen immer wieder mal die CPU-Nutzung kontolliert, und die 2-Kern-Engine kam stets an die 50% CPU, die 4-Kern-Engine lag kurz vor 100%. Die Steuerung war wohl schon ganz OK.

Benno


Generell ist erst mal die Frage, ob eine Engine mehrere/alle Kerne nutzen soll (z.B. auf playchess) oder ob man viele Engines im singlecore-Betrieb laufen lassen will (z.B: für Ranglisten-Test-Gauntlets). Im letzteren Fall ist HT auf jeden Fall auszuschalten, weil es dann keinen Sinn hat und ca. 10% Knotenleistung kostet. Im ersteren Fall kommt es auf die Engine an: Manche profitieren vom HT, andere nicht, das muß man ausprobieren.

Stefan
Parent - - By Benno Hartwig Date 2014-02-07 07:15

> Generell ist erst mal die Frage, ob eine Engine mehrere/alle Kerne nutzen soll (z.B. auf playchess) oder ob man viele Engines im singlecore-Betrieb laufen lassen will (z.B: für Ranglisten-Test-Gauntlets)...


Klar, wer z.B. Ratinglisten  erstellen will, hat andere Anforderungen.
Ich dachte an die Situation, dass jemand einfach eine möglichst starke Engine will (Maschinenraum, Analyse von Stellungen und Partien, "Mein Name ich Carlsen"...).
"Wie muss man die Engine betreiben, damit sie einfach möglichst stark ist?"
"Wie kann ich meinen Rechner dann optimal einsetzen?"

Benno
Parent - By Stefan Pohl Date 2014-02-07 07:20
Benno Hartwig schrieb:

Klar, wer z.B. Ratinglisten  erstellen will, hat andere Anforderungen.
Ich dachte an die Situation, dass jemand einfach eine möglichst starke Engine will (Maschinenraum, Analyse von Stellungen und Partien, "Mein Name ich Carlsen"...).
"Wie muss man die Engine betreiben, damit sie einfach möglichst stark ist?"
"Wie kann ich meinen Rechner dann optimal einsetzen?"

Benno


Wie gesagt, in diesem Fall muß man das ausprobieren. Das hängt sowohl von der Engine ab, als auch von deinem PC (wieviele Cores, welche Architektur). Ergo muß das jeder für sich selber austesten. Da es eben von der konkreten Konfiguration abhängt. Das ist wahrscheinlich auch der Grund für die kontroverse Debatte über HT, weil jeder was anderes mißt...

Stefan
- - By LuBüWy Date 2014-02-07 09:47
Hallo Benno

Stefan hat die Unterschiede gut beschrieben.Das H.T.wurde vor Jahren im Maschinenraum nicht oder kaum eingeschaltet.Der Hauptgrund war wahrscheinlich,dass bei Verwendung von H.T.die CPU etwas wärmer wird und beim Hochtackten die gesunde Wärme einer CPU schnell überschritten wurde.
Zur Zeit wird wieder fast ausnahmslos mit H.T. gespielt.Das kann daran liegen,dass die neueren Prozessoren nicht mehr so warm werden und dadurch etwas mehr Spielraum vorhanden ist.
Intensive Analyse einer Partie habe ich immer mit eingeschaltetem H.T.gemacht. Das Wichtigste  dabei ist vor allem 
Zeit...Zeit...und nochmal...Zeit.

Gruß Ludwig
Parent - - By Heinz Hagenstein Date 2014-02-07 11:41
Zu Rybkas Zeiten wurde meist ohne HT gespielt.

Mein i7 4770 bringt mit HT macht über 12 % mehr Knoten/s,darauf möchte ich nicht verzichten,aber etwas ist mir aufgefallen,

bei Teststellungen die hier gepostet werden spielt mein PC mit HT selten die Züge aus die hier vorgeschlagen werden,auch nach langer Berechnung,

ohne HT kommen die Züge oft im Sekunden.
Parent - - By Benno Hartwig Date 2014-02-07 13:20

> Mein i7 4770 bringt mit HT macht über 12 % mehr Knoten/s,...


Ceterum censeo...
... dass die Knotenleistung mit Vorsicht zu genießen ist, weil bei mehr Threads auch immer (!) eine größere Anzahl von Knoten unnötigerweise durchgerechnet wird.
Erst wenn die erhöhte Knotenleistung diese Mehr mindestens ausgleichen kann, hast du einen echten Gewinn.

Hier helfen wohl nur echte Tests weiter.
Entweder eine wirklich größere Anzahl von Messungen für das Erreichen bestimmter Tiefen
oder ein direkter Vergleich im Spiel. (so eben mein Vorgehen)

Benno

PS:
Interessant wäre natürlich auch ein Vergleich zu der Situation, wenn das Hyperthreading wirklich deaktiviert ist.
Sind auf einem i7 4 Kerne bei aktiviertem Hyperthreading wirklich genau so schnell wie 4 Kerne bei deaktiviertem Hyperthreading?
Parent - - By Dirk Triebel Date 2014-02-07 13:40
Servus,

ich denke Du kannst es nur durch eine Tiefenmessung herausfinden. Giu öffnen und z.B. bis Tiefe 27 rechnen lassen - Zeit stoppen. Das dann für alle beschriebenen Szenarien wiederholen.

Und Deine 2. Frage hängt weitesgehend von der Rechnerarchitektur ab und hängt von der Affinity ab. Sowas muss man austesten. Der Ingo hat dazu mal einen guten Beitrag geschrieben:

"Übrigens kann es sogar sein, dass bei HT ON und 4 Enignes mit korrekter Affinity deine Enignes schneller sind (unterer einstelliger Bereich, siehe oben) als mit HT OFF. Grund ist, dass die Nebenlast (WIndows/GUI/...) jetzt auf die HT Kerne geschoben wird. Das ist übrigens das, wofür HT gedacht war und das funktioniert auch SEHR gut! "

Ich denke es trifft auch zu wenn Du dazu nur eine engine nimmst mit 4 cores.

Gruß,
Dirk
Parent - By Dirk Triebel Date 2014-02-07 13:49
aso, hier ist die Rede von einem i7. Beim i3 in Deinem Falle dann 2 cores  .

Dirk
Up Topic Hauptforen / CSS-Forum / Begegnungen mit und ohne Hyperthreading

Powered by mwForum 2.29.3 © 1999-2014 Markus Wichitill