Schachcomputer.info Community

Schachcomputer.info Community (https://www.schachcomputer.info/forum/index.php)
-   Die ganze Welt der Schachcomputer / World of chess computers (https://www.schachcomputer.info/forum/forumdisplay.php?f=2)
-   -   Frage: Welche neue Engine für ChessGenius Exclusiv? (https://www.schachcomputer.info/forum/showthread.php?t=5325)

Egbert 07.12.2016 07:04

AW: Welche neue Engine für ChessGenius Exclusiv?
 
Guten Morgen,

mal eine Spezial- Frage an unsere Programmier-Experten. Unsere Umfrage zeigt bislang, dass eine Umsetzung des TASC 30 offenbar ganz oben auf dem Wunschzettel stehen würde. Der TASC 30 basiert auf einem ARM6-Prozessor, welcher auf der ARMv3-Architektur aufbaut. Der im ChessGenius Exclusiv verwendete Prozessor hat einen ARM Cortex-M7.

Ich vermute sehr stark, dass diese Prozessoren nicht befehlskompatibel sind. Wie hoch würdet Ihr den zeitlichen Aufwand schätzen, dass Schachprogramm des TASC 30 auf den Cortex-M7 zu bringen, sofern dass überhaupt möglich ist und es ein Johan de Koning überhaupt wollte. Ganz unabhängig von lizenzrechtlichen Fragen.

Gruß
Egbert

Solwac 07.12.2016 08:20

AW: Welche neue Engine für ChessGenius Exclusiv?
 
Ich habe leider nichts gefunden, was die Ausführung von ARM6-Code auf einem modernen Cortex-M7 bestätigt.

Aber sinnvoller wäre eh einfach das alte Programm neu zu kompilieren. Denn ob der alte IO-Teil emuliert wird oder das alte Programm angepasst wird, der Aufwand dürfte nicht so stark anders sein.

Ruud Martin 07.12.2016 11:04

AW: Welche neue Engine für ChessGenius Exclusiv?
 
Zitieren:

Zitat von Egbert (Beitrag 62923)
Guten Morgen,

mal eine Spezial- Frage an unsere Programmier-Experten. Unsere Umfrage zeigt bislang, dass eine Umsetzung des TASC 30 offenbar ganz oben auf dem Wunschzettel stehen würde. Der TASC 30 basiert auf einem ARM6-Prozessor, welcher auf der ARMv3-Architektur aufbaut. Der im ChessGenius Exclusiv verwendete Prozessor hat einen ARM Cortex-M7.

Ich vermute sehr stark, dass diese Prozessoren nicht befehlskompatibel sind. Wie hoch würdet Ihr den zeitlichen Aufwand schätzen, dass Schachprogramm des TASC 30 auf den Cortex-M7 zu bringen, sofern dass überhaupt möglich ist und es ein Johan de Koning überhaupt wollte. Ganz unabhängig von lizenzrechtlichen Fragen.

Gruß
Egbert

Egbert,

Die Tasc R30 hat einem Arm Prozessor noch basiert auf dem 26 Bit Assembler Code. Die neuesten Prozessoren haben einem 32 Bit oder selbst einem 64 Bit Code. Die letzten Prozessoren die dem 26 Bit Möglichkeit hatte waren dem ARM 710 / ARM 810. Die Assembler von das Tasc Programm ist IO relatiert (zb version 0.31) und Schach relatiert (zb 2.2/2.5 oder dem Gideon). Die Schach Programm im Assembler ist auch 26 Bit orientiert und lauft nicht auf einem 32 Bit Arm (habe das kontrolliert). Deswegen habe ich 250 ARM 710A Professoren angekauft um einem Nachbau dem Tasc möglich zu machen.

Leider hat Johan de Koning nur die Assembler dem schachteil das Programm, nicht dem IO Programm. Aber ich habe am diesem Moment so viel gelernt von Tasc R30 dass ich dem Tasc R30 in einem ARM710 laufend habe. Die ist am 30Mhz, aber ich habe dem Möglichkeit diesem mit einem Große Display aus zu fuhren, so alle Info am gleichen Zeit in Bild… Und etwas Farben dabei, höhere Auslosung dem Brett Abbildung ;)…
Im Q2 2017 wird es einem Nachbau geben dem Operator Modul mit Interface nach dem DGT Bretter und Revelation II Bretter (Figuren Erkennung ist benötigt!). Oder dem Exklusiv Millenium Brett ;)

Auch mehrere Engines (UCI) auf die Hardware von die heutige Millennium Produkte ist nicht (?!) möglich. Im Reflection Modul habe ich die Möglichkeit die Emulation ohne und mit Linux zu nutzen. Ohne startet er gleich aber dann habe ich nur 1.2 Ghz, wegen das nicht da sein von temp und freq ‚throttling‘ und kein Multicore. Das ist das Vorteil von Linux. Und dabei, wenn ich Wifi/Bluetooth oder mehrere Engines (Multicore) habe mochte dann muss es Linux geben (oder einem andere RTOS). Es ist meine Vermutung das die heutige Umgebung Millenium Systemen nur nutzbar für sind fur dedicated Compiles für einem embedded (nicht Linux) System. Oder, wie jetzt einem Programm das schon so gebaut war, wie dem Richard Lang Programm so das dem Exclusiv Figuren Erkennung hat, aber dann mit dem Menu das Original Almeria - London.

Egbert 07.12.2016 11:41

AW: Welche neue Engine für ChessGenius Exclusiv?
 
Hallo Ruud,

vielen Dank für die ausführlichen Hinweise. Habe ich es richtig verstanden, dass Du im Q2 2017 einen Nachbau der Bedieneinheit (Operator Modul) planst, welcher dann kompatibel zu:

- DGT-Brettern
- Revelation II Brettern
- Exclusiv Chess Genius Brett

sein wird? Das wäre ja genial :)

Gruß
Egbert

Ruud Martin 07.12.2016 13:03

AW: Welche neue Engine für ChessGenius Exclusiv?
 
Zitieren:

Zitat von Egbert (Beitrag 62928)
Hallo Ruud,

vielen Dank für die ausführlichen Hinweise. Habe ich es richtig verstanden, dass Du im Q2 2017 einen Nachbau der Bedieneinheit (Operator Modul) planst, welcher dann kompatibel zu:

- DGT-Brettern
- Revelation II Brettern
- Exclusiv Chess Genius Brett

Das wäre ja genial :)

Gruß
Egbert

Fur DGT bretter, ja, damit auch dem Revelation II. Aber wie es moglich ist mit dem Millenium Exclusiv, noch nicht bekannt. Fur mich war dem figuren erkennung beim Exclusiv auch sehr uberrasschend.

Egbert 07.12.2016 13:07

AW: Welche neue Engine für ChessGenius Exclusiv?
 
Danke Ruud,

dann freue ich mich bereits auf Quartal 2 -2017 ;)

Gruß
Egbert

xchessg 07.12.2016 18:12

Re: AW: Welche neue Engine für ChessGenius Exclusiv?
 
Zitieren:

Zitat von Ruud Martin (Beitrag 62929)
Fur DGT bretter, ja, damit auch dem Revelation II. Aber wie es moglich ist mit dem Millenium Exclusiv, noch nicht bekannt. Fur mich war dem figuren erkennung beim Exclusiv auch sehr uberrasschend.

Wäre doch eine sehr schone Sache wenn Phoenix und Millenium daran zusammen arbeiten könnten: DGT hat ein Turnierbrett, Millenium ein Brett fûr der "Hausspieler" mit die gewünschte Abmessungen (40x40) und vor allem Leds zum Zugandeutung.

Gruss

Xavier

Rasmus 07.12.2016 21:49

AW: Welche neue Engine für ChessGenius Exclusiv?
 
Zitieren:

Zitat von Egbert (Beitrag 62923)
Ich vermute sehr stark, dass diese Prozessoren nicht befehlskompatibel sind.

Korrekt, u.a. wegen der alten 26bit-Adressierung, die Ruud schon anschnitt.

Zitieren:

Wie hoch würdet Ihr den zeitlichen Aufwand schätzen, dass Schachprogramm des TASC 30 auf den Cortex-M7 zu bringen
Ich schätze etwa drei Monate:

Sofern es nur um den Engine-Kern selber geht, das könnte man, wenn's gut läuft, in einem Monat schaffen (plus Testphase allerdings). Nicht einbezogen ist aber Treiberschicht, Menü, Oberfläche, Konfig und Positionseditor. Das müßte man vom bestehenden CG-Aufbau übernehmen.

Falls das nicht der Autor selber macht, bleibt zu hoffen, daß die Kommentare und Variablennamen nicht gerade auf niederländisch sind, oder man braucht halt einen niederländischen Programmierer.

Meine Annahmen dazu:

1) The King lief auf diversen Plattformen, so daß die eigentliche Engine höchstwahrscheinlich ohnehin gut gekapselt läuft. Das sollte es vereinfachen, wie man Züge in die Engine reinkriegt und aus ihr rauskriegt. Quasi die Engine als Blackbox behandeln.
2) Die Engine selber ist in C programmiert.
3) Aus 1 und 2 folgt, daß die Engine wahrscheinlich in sauberem C geschrieben ist, denn ansonsten hätte man angesichts der diversen Plattformen und Compiler haufenweise Probleme gehabt.
4) Selbst wenn der Lowlevel-Teil beim TASC in Assembler ist, spielt das kaum eine Rolle, denn angesichts der neuen Hardware müßte man den sowieso neu schreiben. Zudem hat Millennium diesen Teil für ihre Hardware ja auch schon.
5) Der Programmierer ist bereits mit der von Millennium verwendeten M7-Hardware gut vertraut, muß sich also da nicht mehr einarbeiten. Entwicklungsumgebung, Hardware und I/O-Treiberschicht läuft alles schon.

Die hauptsächliche Herausforderung wäre es demnach, den King-Quelltext erstmal zu analysieren und dann die Engine und die Ein/Ausgabe richtig zu interfacen. Dann hätte man eine lauffähige Alpha.

Wenn meine Annahmen so nicht zutreffen, kann sich die Zeit natürlich entsprechend auch deutlich verlängern. Wenn pessimistisch gesehen die Architektur ein Haufen bunter Knete ist, dann kann's auch ein halbes Jahr dauern.

Nehmen wir den Mittelwert aus optimistisch und pessimistisch, landet man bei gut drei Monaten (immer noch für den reinen Engine-Kern). Dazu müßte man u.U. noch z.B. das Menüsystem anpassen, falls TASC und Genius deutlich unterschiedliche Dinge parametrierbar haben.

Wobei das dann nicht so wäre, daß man die Engines wechseln kann wie im Revelation, sondern die wäre dann ins Flash zu spielen und wäre dann als einzige drin.

Egbert 08.12.2016 07:00

AW: Welche neue Engine für ChessGenius Exclusiv?
 
Vielen Dank für Deine umfangreiche Einschätzung und Stellungnahme Rasmus :) Das hört sich durchaus "machbar" an.

Gruß
Egbert

paulwise3 08.12.2016 11:30

Re: Welche neue Engine für ChessGenius Exclusiv?
 
Ich habe nicht vor einen Millennium Exclusiv zu kaufen, habe darum gezögert um an diese wahl mit zu machen. Aber wenn man die wahl hätte, dann neben der King noch ein Kittinger (neben WChess noch der Star Diamond?) und/oder ein Morsch (Atlanta/Magellan oder Fritz?).
Komodo, Shredder, Hiarcs etc. sind viel zu stark um gegen zu spielen, können aber nützlich sein für analysieren, wenn das display genügende möglichkeiten bietet.
Das ist aber nur meine bescheidene persönliche ansicht ;)

Gruss, Paul


Alle Zeitangaben in WEZ +2. Es ist jetzt 06:33 Uhr.

Powered by vBulletin (Deutsch)
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
©Schachcomputer.info