If you are interested....

Discussion of computer chess matches and engine tournaments.

Moderator: Ras

Fizban99
Posts: 6
Joined: Wed Jan 01, 2025 10:13 am
Full name: Angel Monreal

Re: If you are interested....

Post by Fizban99 »

Thanks! I expect the PyPy version to perform better than at least some of the Nuitka builds, simply because PyPy’s JIT tends to favour the type of characteristics that chess engines have. I also understand that some of the engines may not support PyPy.

uSunfish, being specifically adapted for MicroPython, can benefit quite a lot from PyPy as well. The source code is the same for both versions.

I would be glad to see it climb towards the top 10 in your list, despite its design limitations. For example, even the high default of 256 hash slots in the PyPy version means a hash table of only around 400 KB, while most engines use hash tables measured in MB. Another limitation is that uSunfish mainly works with 31-bit integers, so that it can benefit from some MicroPython optimisations. Even the Zobrist hash is only 31 bits.

Despite these limitations, it usually outperforms its parent engine Sunfish in my tests. But Sunfish had different design objectives: it emphasises code legibility and code size over memory usage, which can easily reach GB after several matches.

In one of my tests, uSunfish managed to win 1 game out of 50 against D-House, but only because D-House made an inexplicable blunder in the endgame. Here is the game in question:

[pgn][White "D-House 1.2.0"]
[Black "uSunfish 1.1 (win32 - pypy)"]
[Result "0-1"]
[ECO "D10"]
[GameDuration "00:04:28"]
[GameEndTime "2026-05-15T00:55:44.234 Hora de ver. Europa Occidental"]
[GameStartTime "2026-05-15T00:51:15.290 Hora de ver. Europa Occidental"]
[Opening "Queen's Gambit declined"]
[PlyCount "110"]
[TimeControl "113+0.94"]

1. d4 {book} d5 {book} 2. c4 {book} c6 {book} 3. Nc3 {book} Nf6 {book}
4. Nf3 {book} e6 {book} 5. e3 {book} Nbd7 {book} 6. Qc2 {book} Bd6 {book}
7. g4 {book} h6 {book} 8. Bd2 {book} dxc4 {book} 9. Rg1 {+0.01/10 5.6s}
b5 {+0.86/6 3.1s} 10. h4 {-0.19/12 4.9s} Rf8 {+1.22/6 4.5s}
11. g5 {+0.76/11 3.6s} hxg5 {+1.09/7 4.3s} 12. hxg5 {+0.59/12 8.5s}
Nd5 {+0.95/7 2.9s} 13. Qh7 {+0.70/11 3.5s} g6 {+0.36/7 5.0s}
14. Ne4 {+0.70/12 3.7s} Bc7 {+0.50/7 4.8s} 15. b3 {+0.20/10 4.7s}
cxb3 {+0.09/6 3.6s} 16. axb3 {-0.01/12 6.2s} Bb7 {+0.18/7 2.6s}
17. Bh3 {+0.13/10 3.9s} c5 {+0.27/6 2.5s} 18. Ke2 {-0.01/10 8.1s}
Nf4+ {+0.13/5 4.5s} 19. exf4 {-0.47/11 5.0s} Bxe4 {+0.59/7 3.1s}
20. Rge1 {-0.38/10 5.3s} Nb6 {+0.81/6 3.0s} 21. Bg2 {-0.98/8 4.2s}
cxd4 {+0.95/6 2.6s} 22. Kf1 {+0.06/11 5.2s} Bxf3 {+1.13/6 3.7s}
23. Bxf3 {+1.07/10 4.0s} Kd7 {-0.19/6 2.5s} 24. Qg7 {+1.91/10 1.4s}
Nd5 {+0.63/6 2.5s} 25. Bxd5 {+1.58/10 1.7s} exd5 {-0.23/7 2.1s}
26. Qxd4 {+1.25/11 5.5s} Bb6 {-0.10/6 3.9s} 27. Qd3 {+1.85/10 2.2s}
Kc7 {-0.05/6 2.0s} 28. Qxb5 {+1.65/11 1.8s} Rh8 {+0.13/5 2.8s}
29. Rec1+ {+1.63/11 2.3s} Kb8 {+0.22/6 2.2s} 30. Kg2 {+2.34/11 1.7s}
Re8 {-0.78/5 2.0s} 31. Ra6 {+1.58/9 2.3s} Re6 {-1.00/6 3.1s}
32. Ra5 {+1.51/8 1.6s} a6 {0.00/5 2.0s} 33. Rxa6 {+0.91/10 1.7s}
Rxa6 {+1.68/7 3.2s} 34. Qxa6 {+1.00/11 1.8s} Bxf2 {+1.13/7 3.0s}
35. Qb5+ {+0.54/11 1.5s} Bb6 {+1.45/7 2.9s} 36. Rc5 {+0.83/11 1.3s}
Rd6 {-0.19/8 3.8s} 37. Ba5 {+0.69/11 2.2s} Kb7 {+0.22/8 3.9s}
38. Bxb6 {+0.84/10 1.2s} Qxb6 {-1.32/8 2.6s} 39. Rxd5 {+0.81/12 1.1s}
Qxb5 {-0.05/9 3.6s} 40. Rxb5+ {+0.93/13 1.4s} Ka6 {-0.19/8 3.0s}
41. Rb8 {+1.46/10 1.4s} Rd4 {-0.69/8 2.8s} 42. Kf3 {+1.94/12 2.1s}
Ka7 {-0.55/9 3.7s} 43. Rf8 {+2.21/12 1.2s} Rd7 {-1.10/10 2.2s}
44. f5 {+2.21/12 4.1s} Rb7 {+0.50/9 2.5s} 45. b4 {+1.89/11 1.4s}
gxf5 {-1.00/10 2.3s} 46. Kf4 {+2.05/10 0.85s} Rxb4+ {-2.46/10 2.0s}
47. Kxf5 {+2.31/11 2.5s} Ka6 {-2.55/8 2.1s} 48. Rxf7 {+2.56/11 0.91s}
Rb5+ {-2.05/10 2.0s} 49. Kf6 {+3.20/10 1.1s} Rb6+ {-2.87/11 2.1s}
50. Kg7 {+3.32/10 1.2s} Kb5 {-2.50/9 3.3s} 51. Kh7 {+3.32/9 1.2s}
Kc5 {-3.69/9 1.7s} 52. g6 {+8.62/11 0.95s} Rb1 {-4.32/8 1.7s}
53. Kg8 {+5.53/9 2.7s} Kd5 {-2.00/9 2.5s} 54. Kf8 {+2.75/9 1.4s}
Ke6 {-1.23/9 1.7s} 55. g7 {+10.09/9 0.96s} Rb8# {+576.36/7 0.005s, Black mates}
0-1[/pgn]
User avatar
Sylwy
Posts: 5206
Joined: Fri Apr 21, 2006 4:19 pm
Location: IAȘI - the historical capital of MOLDOVA
Full name: Silvian Rucsandescu

Re: If you are interested....

Post by Sylwy »

:D

Ahcaira (it comes from the southwest of France)-the third engine written in Zig that I have compiled! And the 14th in my Zig engine collection. Of course this one is also included in the tournament!

Image

Image
User avatar
Sylwy
Posts: 5206
Joined: Fri Apr 21, 2006 4:19 pm
Location: IAȘI - the historical capital of MOLDOVA
Full name: Silvian Rucsandescu

Re: If you are interested....

Post by Sylwy »

My tournament PYTHON_1st_League_2026 after 1230 games:

Image

-marked in green-my Python favorites;
-marked in blue-the four guests from Zig's world;
-marked in red-the newest Python competitors entered the tournament.

Out of 36 engines (32 in Python and 4 in Zig) only one (among the weakest-ValiantMk8) was tested by CCRL. I don't even remember CEGT....The mirage of the SF genome is like a black hole - an irresistible gravity for the famous testers of the planet... :lol: ..Only here you can see Java-Python-Go tournaments......By the way, I have introduced two more Zig guests. One (Radiance 4.4) for a clear reason - is an Elo marker for the best Python engines (Radiance 4.3 64-bit has 2071 Elo points on CCRL Blitz, and version 4.4 is accredited by the author's tests with 2243 Elo points). Maybe I will introduce 1-2 more markers for interpolation.
Water-1.0.2_x64 - it is a very interesting engine written entirely in Zig with a very original implementation of its own neural network in the engine architecture. It is worth studying.
NeuroSpeed-0.1_x64 & Ahcaira-0.4.0_x64 - there are two of the engines written in Zig compiled by me. The 3rd one (Delilah-evaluation based on NNUE) is too strong for this tournament.

:wink:
Fizban99
Posts: 6
Joined: Wed Jan 01, 2025 10:13 am
Full name: Angel Monreal

Re: If you are interested....

Post by Fizban99 »

Good to see uSunfish climbing a little.

By the way, Endamat was also tested by CCRL and is listed at 1216 Elo on the CCRL Blitz list, so it could also be used as an Elo marker.
User avatar
Sylwy
Posts: 5206
Joined: Fri Apr 21, 2006 4:19 pm
Location: IAȘI - the historical capital of MOLDOVA
Full name: Silvian Rucsandescu

Re: If you are interested....

Post by Sylwy »

Fizban99 wrote: Tue May 19, 2026 7:52 pm By the way, Endamat was also tested by CCRL and is listed at 1216 Elo on the CCRL Blitz list, so it could also be used as an Elo marker.
:shock:

WOW! This is really a surprise. THANK YOU!

Image
User avatar
Sylwy
Posts: 5206
Joined: Fri Apr 21, 2006 4:19 pm
Location: IAȘI - the historical capital of MOLDOVA
Full name: Silvian Rucsandescu

Re: If you are interested....

Post by Sylwy »

:D

An interesting experiment!!! Comes from INSA Rennes, IRISA, Inria with the help of Claude (Anthropic) - BFChess - a chess engine written entirely in Brainfuck.

Image

Image
User avatar
Sylwy
Posts: 5206
Joined: Fri Apr 21, 2006 4:19 pm
Location: IAȘI - the historical capital of MOLDOVA
Full name: Silvian Rucsandescu

Re: If you are interested....

Post by Sylwy »

Image

========================================

I just compiled today's version of the CODA engine (Adam Twiss and Claude) - one of the most powerful chess engines written in Rust. A true chess monster !

Image

Image

Image

Image
User avatar
Sylwy
Posts: 5206
Joined: Fri Apr 21, 2006 4:19 pm
Location: IAȘI - the historical capital of MOLDOVA
Full name: Silvian Rucsandescu

Re: If you are interested....

Post by Sylwy »

The 47th chess engine written in Python that I have working. And the 37th participant in my PYTHON_1st_League_2026 tournament.

Image

Image
Fizban99
Posts: 6
Joined: Wed Jan 01, 2025 10:13 am
Full name: Angel Monreal

Re: If you are interested....

Post by Fizban99 »

Sylwy wrote: Tue May 19, 2026 8:43 pm
:shock:

WOW! This is really a surprise. THANK YOU!
Well, I understand the Endamat version in your tournament is a lower version, so it's elo score should be more aligned with 1216 than 1298.
User avatar
Sylwy
Posts: 5206
Joined: Fri Apr 21, 2006 4:19 pm
Location: IAȘI - the historical capital of MOLDOVA
Full name: Silvian Rucsandescu

Re: If you are interested....

Post by Sylwy »

Fizban99 wrote: Thu May 21, 2026 8:43 am
Sylwy wrote: Tue May 19, 2026 8:43 pm
:shock:

WOW! This is really a surprise. THANK YOU!
Well, I understand the Endamat version in your tournament is a lower version, so it's elo score should be more aligned with 1216 than 1298.
No way. Before the tournament I test the versions. A newer version (especially for Python engines) does not automatically mean stronger. Two other examples from my tournament: in 17th place is (now) the AllayaChess engine (it is version 1.6). Look where the later version is (1.7-23rd place). Look where the Czech Beast 3.3.1 engine is. The 3.2 versions (which played in the 2nd league). were stronger. Conclusion: newer does not automatically mean stronger. Testing a little (especially in selfplay)....(if)...
Out of curiosity, I will also introduce the most recent version into the tournament: Endamat 20250627-x64.