Dirk Triebel schrieb:
...
Nein, ich lasse auf einem 8 Kerner (davon 4 virtuelle Kerne) z.B. 3 GUIs (egal ob Fritz oder Shredder) parallel laufen. Es läuft bei allen 3 GUIs immer H4pro gegen einen anderen Gegner. Das heißt die GUIs greifen parallel 3 mal auf H4pro zu. Jede Engine hat einen Kern und es wird gepondert. Es sind dann also 6 Kerne ständig im Einsatz.
Da ist dein Problem, du test 6 Kerne, hast aber nur 4. Die 4 anderen sind "Marketingkerne"
(Nein nicht nur, erfüllen schon einen Zweck, aber genau das was du machtst ist suboptimal)
Dirk Triebel schrieb:
Ich habe nun festgestellt, das die Knotenzahl/s bei H4pro weniger wird je mehr GUIs auf H4pro gleichzeitig zugreifen.
Wenn ich nur eine GUI mit H4pro ein Turnier spielen lasse habe ich im Endspiel z.b. approx. 2400kn/s. Wenn ich nun 3 GUIs öffne mit dem oben beschriebenen Szenarium dann sind es bei H4 nur noch approx. 1800Kn/s im Endspiel usw.. Bei 2 GUIs sind es dann noch mehr Knoten als bei 3 und bei 4 offenen GUIs (alle cores im Einsatz) sind es nochmal weniger als bei 3en.
Beim dem Szenario testest du CPUlast + Festplattenzugriff. Du solltest saubere Bedinungen schaffen. Auch griefen nicht VIER GUIs auf EINEN H4 zu. DIe 4 GUIs laden X mal die selbe Exe, danach läuft jede auf einem Kern. (Dummerweise schiebt der WIndows scheduler die von KErn zu Kern wies ihm passt - siehe Affinity unten)
Dirk Triebel schrieb:
Ich finde es komisch und kenne bislang den Grund dafür noch nicht. Deshalb dachte ich, es hängt vielleicht mit der Fritz GUI zusammen. Habe es aber speziell nur bei H4pro gesehen. Werde es nochmal mit H4 und anderen engines testen.
1. Als erstes gehe in BIOS und schalte "zeitweise" Hyperthreading ab.
2. Starte eine GUI (Classic oder was du willst) lade eine Engine (H4 Pro mit einem Kern).
3. Gib dem ganzen eine Hashgröße die dein System auch bei später noch 8 Engines
sicher verträgt. (RAM/2/8 und nicht 8 mal cache für TBs vergessen, am besten TBS aus und gar nicht laden, Pfade löschen!)
4. Grundstellung (!), Analyse anschauen, welche Tiefe so ca. in 5min erreicht werden kann.
Dieses Tiefe ist deine Referenztiefe auf die wir uns ab jetzt beziehen. Sagen wir mal es wäre Tiefe 27. Zeit merken!
5. Jetzt GUI schließen und zwei mal neu starten.
6. Analyse starten bis Tiefe 27 erreicht.
7. 5 + 6 wiederholen so das der Test mit 1, 2, 3 und 4 Kernen durchläuft.
Bei HT Off sollten, unabhänig von der GUI, deine Knoten ungefähr gleich bleiben und die Tiefen in der selben Zeit erreicht werden. Ein leichter Abfall von unteren einstelligen Prozentbereich ist normal, weil das Windows, die GUI und andere evtl. laufende Programme auch noch etwas wollen.
Jetzt wieder ins BIOS, HT anschalten und obiges mit 1 bis 4 Kernen (gerne auch mehrmals) wiederholen. Je nach OS bekommst du bis 4 entweder die selben Ergebnisse wie vorher, oder ein niedrigeres Ergebniss weil dein OS über alle 8 "Kern" verteilt. und HT Kerne nunmal nicht so viel können wie echte Kerne. Das hängt aber vom OS ab. (Ich habe kein HT CPU mehr, kauf ich nicht, rausgeschmissenes Geld)
Jetzt kannst du das ganze gerne mal auf 6 oder 8 Kernen ausbauen. du wirst sehen das deine Knotenzahl runtergehen muß!
Bei 8 Kernen kann man jetzt schön die Zugehörigkeit (Affinity) jedes einzelnen H4 zu einer CPU im Taskmanager zuordnen. Du wirst sehen, das du dann 4 schnelle H4 und 4 langsame bekommst. Ich glaube die CPUs 0,2,4 und 6 sind die schnellen, 1,3,5,7 die langsamen Kerne.
Das alles hat nichts mit der GUI oder der Engine zu tun, sondern schlicht mit deiner für Schach suboptimalen (weil man wissen muß was man tut) CPU Architektur.
Auch solltest du darauf achten, für solche Tests ohne TB Zugriffe zu arbeiten. Zum einen bremst das die Engine ohne das di eCPU etwas dafür kann, zum anderen kommen sich dein 6 Prozesse in die Quere wil JEDE Engine durch den selben Festplattencontroler auf das selbe Verzeichniss zugreifen will. Ganz schlimm wenn es noch eine alte mechanische Platte ist, der Kopf ist dann praktisch nie dort wo ihn eine ENgine gerade braucht. Dein System wird richtig langsam! (Das wird das sein, was du mit den einbrechenden Knoten im Endspiel siehst.
Dieses Endspielzugriffsproblem wirst du kaum umgehen können, wenn d mehrere ENgines gleichzeitig zugreifen lassen willst. MAn kann es mindern mit einem USB Stick oder eines SSD, das Problem des "Flaschenhalses" aka "Controler" bleibt aber.
Die beste Lösung für ENignetests ist wahrscheinlich sich auf 4 Steiner zu begrenzen. Die sind so klein das Sie nach wenigen Probes im Windows cache stehen und dann sozusagen wie eine Ramdisk funktionieren (Das sit auch der Grund warum 4er SZYGYTZTYGY Bases für H4 nichts bringen, Nalimov in der Ramdisk ist praktisch identisch shcnell). Willst du tatsächlich mit mehreren Enignes an einer Sndspielstellung mit vielen TBS analysieren wirst du in den sauren Apfel beissen müssen ...
Gruß
Ingo
PS: Ü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!