LCO zur Analyse nutzen ?

Informationen, Hilfestellung und Diskussion zu Engines
Schachhai
Beiträge: 207
Registriert: Mo 21. Jan 2019, 22:46

LCO zur Analyse nutzen ?

Beitragvon Schachhai » Di 28. Mai 2019, 10:43

Nach dem klaren Sieg von LCO vs Stockfish stellt sich die Frage:
Ist LCO auch für die FS-Analyse geeignet ?
Welche Hardware braucht man ?

In meinem neuen PC habe ich eine RTX 2060 ca 400€
Für die Top-GraKa 2080 Ti müsste man ca 1.000 € mehr investieren.
Dazu kommt dann noch ein entsprechend starkes Netzteil
Genügend Arbeitsspeicher muss man auch haben
Mit 32 MB bin ich da am absolut unteren Level 128 wären für eine längere Analyse sinnvoll
der Speicher ist sonst sehr schnell voll

In der Grundstellung komme ich nach 10 min mit LCOauf eine Tiefe von 20 HZ
Stockfisch erreicht bei meinen 24 Threads in der Zeit Tiefe 38

Inwieweit spielt die Tiefe hier eine Rolle ?
Ich persönlich halte die SF-Derivate wo es spezielle Einstellungen für die Analyse gibt
noch für die bessere Lösung.

Ideal wäre evtl eine Hybridlösung
Nur wär soll da dominant sein SF oder LCO ?
VG
H Krauß

Asmodis
Beiträge: 609
Registriert: So 24. Jun 2018, 15:18

Re: LCO zur Analyse nutzen ?

Beitragvon Asmodis » Mi 29. Mai 2019, 11:20

Hallöchen

Ich hab das ganze TCEC-Turnier ja verfolgt. Daher meine Einschätzung: Ja, aber das hängt stark vom Stellungstyp ab. Geschlossene Bauernstrukturen scheinen LC0 besonders zu liegen, weil da meist kurzfristige taktische Lösungen nicht drin sind (siehe besonders Partien 61 und 62 im TCEC-Turnier). Aber auch in anderen Stellungen punktet LC0 recht gut. Ich teste die Analysefähigkeiten derzeit in einem relativ unwichtigen Turnier (Fernschach Vereinsmeisterschaft Berolina) habe aber da eigentlich zu spät auf Leela umgestellt, weil ich die Grafikkarte erst bekommen habe, als das Turnier schon im vollen Gange war. Aber bisher bin ich mit den Ergebissen zufrieden. Gerade wenn man bei Partie 61 des TCEC-Turniers sieht, wie lange Stockfish noch an Vorteil geglaubt hat (bis zum 25. oder 26. Zug), während LC0 bereits im 18 Zug erkannte, dass die Stellung für Stockfish den Bach runtergeht lässt darauf schließen, dass die Denktiefe hier nicht der ausschlaggebende Faktor ist. Immerhin lief Stockfish hier mit einem Hochleistungsrechner auf 43 Kernen.

Hardware... die Frage aller Fragen. Das kommt drauf an, was man erwartet. Für mich ist schon die GTX 970 eine Offenbarung (Hab sie mehr oder weniger für lau bekommen), da sie Stockfish auf meinem 4-Kern i7 in den meisten Stellungstypen locker schlägt. Eine RTX 2060 zieht auch nicht mehr Strom und ist vergleichsweise günstig. Sollte bei optimaler Konfiguration also reichen zumal die RTX 2080 TI jetzt soviel schneller auch nicht ist. Zumindest ist der Vorteil nicht so gravierend, dass er den Preisunterschied rechtfertigt.

Der Arbeitsspeicher ist für die Fernschachanalyse natürlich mit jeder Engine interessant. Stockfish füllt den Hast aber weit schneller als es LC0 tut. Wenn die 32 GB für Deinen Stockfish reichen, dann tun sie es für Leela schon lange. Aber mehr ist natürlich immer besser, wenngleich Stockfish und Co hier mehr davon profitieren dürften.

Denktiefe: Nund ja... wenn du das TCEC-Turnier gesehen hast, dann weiss Du auch, dass die Denktiefe hier nicht entscheidend ist. Stockfish kam immer tiefer als LC0. Und wer hat das Turnier gewonnen?

Die Stockfish-Derivate mit den speziellen Einstellungen... da muss ich zugeben, dass ich die noch nicht intensiv gegen LC0 gehetzt habe (vor allem aus Zeitgründen). Inwieweit diese Einstellungen jetzt wirklich so ausschlaggebend sind... Einerseits muss man genau wissen, was man da wie einstellt, andererseits ändert es nur bestimmte Kriterien im Programm ab. Die Frage ist wie diese Einstellungen sich auf bestimmte Stellungstypen auswirken. Und da kann man über die Frage nach den richtigen Einstellungen dann vermutlich eine Doktorarbeit schreiben.

Was jetzt als Analyseengine besser ist... gute Frage und leider verdammt stellungsabhängig. Dabei hast Du es mit deinen 24 Kernen ja relativ einfach. Du kannst Leela und ein anderes Schachprogramm locker parallel analysieren lassen. Die Hauptarbeit läuft auf der GPU. Das Steuerprogramm für Leela braucht gerade mal 2 Kerne. Experimente mit 3 Kernen brachten keine signifikanten Geschwindigkeitssteigerungen. Dadurch kann man dann Stockfish oder ein Derivat mit 18-20 Kernen durchaus parallel laufen lassen. Im Zweifel bietet sich an, eine signifikante Stellung mit wechselnden Farben zwischen Leela und Stockfish (oder einem anderen Programm) ausspielen zu lassen. Ich lasse z.B. bei einem frühen Remisangebot gerne die Stellung im Turniermodus zwischen den beiden durchspielen. Da sieht man dann relativ schnell, wie die beiden die Stellung auf verschiedene Weise im Angriff und in der Verteidigung angehen. Stellungsmäßig würde ich sagen. Geschlossene Strukturen und langfristig positionelle Stellungen LC0, offene Strukturen und taktisch orientierte Stellungstypen Stockfish und Co. Trifft zwar auch nicht immer zu, ist aber meistens die beste Alternative.

Von den Hybriden halte ich derzeit noch nichts. Bisher haben sich entsprechende Versuche auch nicht besser geschlagen als LC0 selbst. Zudem ist in diesem Zusammenhang fraglich ab welchen Bedenkzeiten ein solcher Hybrid seine Stärken entwickelt. In den TCEC-Turnieren war noch keiner dabei und bei CCCC sind die Bedenkzeiten zu kurz um Rückschlüsse auf das Fernschach zuzulassen.

Du spielst ja auch nicht erst seit gerstern Fernschach. Such dir halt aus der eigenen Praxis ein paar Stellungen raus, die Deiner Meinung nach signifikant sind und lass die entsprechenden Partien dann zwischen den beiden ausspielen. Die Hardwarepower dafür hast Du ja jetzt, lach. Aber wehe Du berichtest dann nicht darüber... Dann komm ich vorbei und kipp ne Flasche Bier auf Deine Grafikkarte (inspiriert von John Carpenters "Das Ding aus einer anderen Welt"). :mrgreen: :mrgreen: :lol: :lol:

Schachhai hat geschrieben:Nach dem klaren Sieg von LCO vs Stockfish stellt sich die Frage:
Ist LCO auch für die FS-Analyse geeignet ?
Welche Hardware braucht man ?

In meinem neuen PC habe ich eine RTX 2060 ca 400€
Für die Top-GraKa 2080 Ti müsste man ca 1.000 € mehr investieren.
Dazu kommt dann noch ein entsprechend starkes Netzteil
Genügend Arbeitsspeicher muss man auch haben
Mit 32 MB bin ich da am absolut unteren Level 128 wären für eine längere Analyse sinnvoll
der Speicher ist sonst sehr schnell voll

In der Grundstellung komme ich nach 10 min mit LCOauf eine Tiefe von 20 HZ
Stockfisch erreicht bei meinen 24 Threads in der Zeit Tiefe 38

Inwieweit spielt die Tiefe hier eine Rolle ?
Ich persönlich halte die SF-Derivate wo es spezielle Einstellungen für die Analyse gibt
noch für die bessere Lösung.

Ideal wäre evtl eine Hybridlösung
Nur wär soll da dominant sein SF oder LCO ?
Liebe Grüße

Hartmut Hering

Schachhai
Beiträge: 207
Registriert: Mo 21. Jan 2019, 22:46

Re: LCO zur Analyse nutzen ?

Beitragvon Schachhai » Do 30. Mai 2019, 14:41

Ich versuche geschlossene Bauernstrukturen zu vermeiden.
Meine Stärke liegt im taktischen Bereich.
Das hat mir schon manchen Siegpunkt gebracht, da die Engines auch nicht alles sofort sehen.
Die Gegner die das noch nicht wissen können ja nun geschlossene Stellungen anstreben, dann lasse ich mir von LCO helfen :D
Ich muss jetzt mal schauen welche Stromkosten auf mich zukommen, vom Arbeitsaufwand lohnt es sich auf jeden Fall.
Ich habe immer mindestens 40 Partien am Laufen , da macht es schon einen Unterschied ob ich das Analyseergebnis in 1h oder 20min habe
Und wie du schreibst, ich kann jetzt parallel eine AB-Engine und LCO gleichzeitig rechnen lassen (2 CPU für LCO)
Werde die Zeit wohl nicht haben um entsprechende Partien zwischen AB + NN auszuspielen. In komplizierten Stellungen nutze ich schon mal die Option Stellung ausspielen, ist aber sehr zeitaufwendig.
Ach ja, meine GPU mag kein Bier :lol:
Wenn du mich mal besuchst , bring doch einfach sowas mit ;)
https://whic.de/glenlivet-1955-2012-gor ... phail.html
VG
H Krauß

Asmodis
Beiträge: 609
Registriert: So 24. Jun 2018, 15:18

Re: LCO zur Analyse nutzen ?

Beitragvon Asmodis » Do 30. Mai 2019, 14:58

Schachhai hat geschrieben:Ach ja, meine GPU mag kein Bier :lol:
Wenn du mich mal besuchst , bring doch einfach sowas mit ;)
https://whic.de/glenlivet-1955-2012-gor ... phail.html


Puh... wenn ich mir so einen Whiskey leisten könnte, würde ich den TCEC-Server kaufen...
Liebe Grüße

Hartmut Hering

Dicken

Re: LCO zur Analyse nutzen ?

Beitragvon Dicken » So 2. Jun 2019, 11:05

Hallo Hartmut,

würde Leela gerne mal als Analyseengine testen, allerdings sind die Beschreibungen zur Installation im Internet ziemlich kompliziert. Kommt man da als Normalsterblicher irgendwie geballt dran!? Einfach...verständlich!?

Überforderte Grüße!
Lars

Asmodis
Beiträge: 609
Registriert: So 24. Jun 2018, 15:18

Re: LCO zur Analyse nutzen ?

Beitragvon Asmodis » So 2. Jun 2019, 13:56

So kompliziert finde ich die gar nicht, auch wenn das eine oder andere ein wenig "tricky" ist. Aber fangen wir mal an. Welche LCZero-Version willst Du denn installieren? Wie sieht deine Computerkonfiguration aus? (Speicher, CPU und vor allem Grafikkarte). Schreib mal ein wenig da drüber, dann schau ich mal wie ich Dir am Besten helfen kann.
Liebe Grüße

Hartmut Hering

Dicken

Re: LCO zur Analyse nutzen ?

Beitragvon Dicken » So 2. Jun 2019, 16:49

Hallo Hartmut,

ich will natürlich die neueste Version!?
Speicher 16 GB
Intel(R)_Core(TM)_i7-8700K_CPU_@_3.70GHz
NVIDIA GeForce GTX 1060 6GB
Reicht das so?

Gruss
Lars

Asmodis
Beiträge: 609
Registriert: So 24. Jun 2018, 15:18

Re: LCO zur Analyse nutzen ?

Beitragvon Asmodis » Mo 3. Jun 2019, 02:07

Ja das reicht so. Ich poste mal für Dich und andere interessierte morgen eine komplette Anleitung, wie man Leela am Besten installiert. Was ich noch wissen muss... unter welcher GUI willst Du Leela benutzen? Chessbase? Fritz? Arena? oder irgendwas ganz anderes? Das wäre noch wichtig.
Liebe Grüße

Hartmut Hering

Dicken

Re: LCO zur Analyse nutzen ?

Beitragvon Dicken » Mo 3. Jun 2019, 19:22

...unter Chessbase 15.
Gruß
Lars

Asmodis
Beiträge: 609
Registriert: So 24. Jun 2018, 15:18

Re: LCO zur Analyse nutzen ?

Beitragvon Asmodis » Di 4. Jun 2019, 21:54

OK, also dann mal zu den einzelnen Schritten:

1. Bitte sicherstellen, dass Du die neuesten aktuellen Treiber für Deine Grafikkarte hast. Gegebenenfalls bitte den Grafikkartentreiber auf der Nvidia-Homepage aktualisieren.

2. Geh bitte auf folgende Seite: https://github.com/LeelaChessZero/lc0/releases. Hier entweder die aktuellste Stable Release laden (v0.21.1) oder alternativ die aktuellste Pre-Release (v0.21.2-rc2) Dazu öffnest Du auf der entsprechenden Seite den Reiter "Assets" und lädst bitte die jeweilige Cuda-Version runter.

3. Nun brauchst Du noch das Network-File, welches das Neuronale Netz an sich enthält. Hier wird es etwas schwieriger. Wenn man ermitteln will, welches Network-File das stärkste ist, so muss man ein wenig das Forum der LCZero-Seite verfolgen. Ich persönlich nehme immer das Netz, welches aktuell bei den TCEC-Turnieren spielt, da dies das Netz ist, welches von den Admins als stärkstes ausgewählt wurde. Allerdings ist es hier wie bei den Development-Versionen von Stockfish. Was heute das stärkste Netz ist, kann in einigen Stunden schon wieder überholt sein... Das stärkste offizielle Netz dürfte derzeit das Net 42471 oder 42473 sein. Beide zu finden hier: http://lczero.org/networks/. Alternativ spielte im TCEC-Superfinale ein inoffizielles experimentelles Network-File namens T40.T8.610, welches noch als etwas stärker empfunden wurde und hier zu finden ist: https://www.dropbox.com/s/rmcf0lf1hes10 ... 10000?dl=0. Da ich das letztere Net selber benutze und beste Erfahrungen damit gemacht habe, empfehle ich dieses runterzuladen.

4. Entpacke nun bitte das unter 2. runtergeladene LC0 Programm. Es sollte ein Ordner entstehen, in dem sich das Programm befindet und andere benötigte Dateinen befinden.

5. Die unter 3. heruntergeladene Datei hat in der Regel einen langen und unübersichtlichen Namen. Benenn sie daher um in "weights" und lege sie dann in den Ordner, in dem sich auch das LC0-Programm selbst befindet. Solltest Du mehrere Network-Files ausprobieren wollen dann kopiere alle entsprechenden Networks in den LC0-Ordner und gib den Teilen einen Namen (anstelle von weights) der die entsprechenden Networks beschreibt. In Bezug auf meine Beschreibung unter 3 wären das also "ID 42471", "ID 42473" und "ID T40.T8.610". Aber bitte nur, wenn Du hier ein wenig rumprobieren willst. Im allgemeinen reicht ein Network-File.

6. Den ganzen LC0-Ordner mit allen Dateien legst Du jetzt da hin wo Du normalerweise auch andere Engines auf Deinem Rechner aufbewahrst.

7. Nun öffnest Du Dein Chessbase-Programm. Hast Du unter Chessbase schonmal eine Engine (z.B. Stockfish) installiert? Dann sollten Dir die wesentlichen Schritte (Neue Engine erstellen, Programmpfad suchen und Engine auswählen, etc) eigentlich bekannt sein. In diesem Fall installierst Du jetzt die Engine und meldest Dich danach nochmal. Dann beschreibe ich noch, wie Du die Parameter der Engine einstellen musst (ist der Name des Networks "weights" so sollte das Programm das File automatisch finden. Hast Du jedoch mehrere Networks, müssen wir dem Programm vorher sagen, welches Network-File verwendet werden soll, ansonsten wird LC0 nichts machen)

Wenn Du soweit bist oder es bei dem bisher gesagten Probleme gibt, melde Dich einfach nochmal.
Liebe Grüße

Hartmut Hering

Dicken

Re: LCO zur Analyse nutzen ?

Beitragvon Dicken » Mi 5. Jun 2019, 19:33

Fertig...soweit

Dicken

Re: LCO zur Analyse nutzen ?

Beitragvon Dicken » Mi 5. Jun 2019, 19:37

Läuft noch nicht...
ist
weights.gz
richtig?

Asmodis
Beiträge: 609
Registriert: So 24. Jun 2018, 15:18

Re: LCO zur Analyse nutzen ?

Beitragvon Asmodis » Mi 5. Jun 2019, 21:28

weights.gz ist soweit richtig. Nur weights sollte auch reichen. Wenn es noch nicht funktioniert... kommt eine Fehlermeldung?

Wenn du die Engine geladen hast, musst Du mal in die Preferences schauen, wo man die Einstellungen für die Engine vornehmen kann. Dort findest Du Einstellungen wie Weights File, Backend, Threads, etc. Bei Weights File musst Du reinklicken und das entsprechende Weights-File suchen (in Deinem Fall also die weights.gz). Bei Backend sollte cudnn-fp16 ausgewählt sein. Bei Threads 2. Such mal bitte diese Einstellungen und mach die entsprechenden Eingaben. Danach sollte es eigentlich gehen. Ansonsten melde Dich nochmal
Liebe Grüße

Hartmut Hering

Dicken

Re: LCO zur Analyse nutzen ?

Beitragvon Dicken » Mi 5. Jun 2019, 22:49

Funktioniert nicht.
"lc0-v0.21.2-rc2" caused an exeption

Asmodis
Beiträge: 609
Registriert: So 24. Jun 2018, 15:18

Re: LCO zur Analyse nutzen ?

Beitragvon Asmodis » Mi 5. Jun 2019, 23:06

Hm... aber in die Engine-Preferences kommst du rein? Wenn ja, dann mach folgendes:

In den Preferences findest Du einen Eintrag "Log-File" (wenn ich mich richtig erinnere ist der ganz unten rechts). Dort kannst Du ein Log-File anlegen lassen. Gib dort einen Pfad zu einem Ordner ein, wo Du das Log-File speichern willst. Vorzugsweise den Ordner, wo sich auch die LC0.exe befindet. Gib als Name für die Datei "LC0-Fehlerbericht.txt" ein und versuch nochmal das Programm zu starten.

Es wird vermutlich wieder abstürzen, aber vorher die Datei "LC0-Fehlerbericht.txt" anlegen. Diese Datei brauche ich. Dann finden wir den Fehler schon.

Wenn auch das nichts hilft schick mir bitte eine Private Nachricht mit Deiner Telefonnummer und wann ich Dich morgen telefonisch erreichen kann. Das kriegen wir schon hin... LC0 installieren ist manchmal etwas trickreich (unter Chessbase noch mehr als unter anderen Oberflächen). Bei mir hat es bei einem Rechner sofort funktioniert und beim 2. hatte ich ähnlich Probleme wie Du. Aber hingekriegt hab ich es immer...
Liebe Grüße

Hartmut Hering


Zurück zu „Engines“

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast