Texel 1.07

Discussion of anything and everything relating to chess playing software and machines.

Moderators: hgm, Rebel, chrisw

petero2
Posts: 684
Joined: Mon Apr 19, 2010 7:07 pm
Location: Sweden
Full name: Peter Osterlund

Texel 1.07

Post by petero2 »

Version 1.07 of my chess engine Texel is now available for download.

This version contains the following features:
- New parallel search based on lazy SMP and ABDADA.
- Parallel search can use computer clusters.
- Include hashfull information in UCI output.
- UCI option to control whether the transposition table is aged when starting a new search in analysis mode.
- BMI2 compile.
- Support for large pages in Windows.

The following executables are included in the download package:

texel64bmi.exe : For 64-bit Windows 7 or later Intel systems with BMI2, SSE42 and POPCOUNT.
texel64.exe : For 64-bit Windows 7 or later Intel systems with SSE42 and POPCOUNT.
texel64amd.exe : For 64-bit Windows systems with SSE42 and POPCOUNT.
texel64old.exe : For 64-bit Windows systems without SSE42 and POPCOUNT.
texel64cl.exe : Cluster version of texel64.exe. Requires Microsoft MPI to be installed.
texel64 : For 64-bit Linux Intel systems with SSE42 and POPCOUNT.
texel-arm64 : For the Android armv8-a 64-bit architecture.
texel-arm : For the Android armv7-a architecture.
texel32.exe : For 32-bit Windows systems with SSE42 and POPCOUNT.
texel32old.exe : For 32-bit Windows systems without SSE42 and POPCOUNT.

For more Android executables see the "Texel Chess Engine" app in the Google Play Store.

The Linux executable requires a fairly recent 64-bit Linux distribution to run. To compile your own Linux version see the readme.txt file. Running "make texel64" should work in most cases.

Cluster support depends on MPI. See the readme.txt file for more information.

Texel 1.07 is around 35 elo stronger than Texel 1.06 in self play at very fast time controls.

Detailed list of changes:

Search:
- More aggressive LMR in expected CUT nodes.
- Don't use history and killer heuristics for captures.
- Prevent q-search explosion in pathological cases.
- Allow LMR for checking moves with negative SEE value.
- Don't do internal iterative deepening when in check.
- Don't do razoring when in check.
- Don't check extend SEE<0 moves at depth<=3.
- More LMR/LMP reduction if the evaluation score is worse than it was two plies ago. Idea from stockfish.
- More aggressive reverse futility parameters.
- In hash replacement, prefer a deep bound over a shallow exact entry if the depth difference is larger than 3.
- Use history score to control LMR reductions.

Parallel search:
- Parallel search algorithm changed to hybrid lazy SMP / ABDADA.
- Removed code that on NUMA avoids probing the TT at depth 0 for nodes > 0.

Evaluation:
- Removed the piece trade bonus.
- Implemented fortress detection for KQvsKRM+pawns endgames.
- Added endgame correction for KQKNNNN which is generally won by the knights.

Speed:
- Support for large and huge page allocations for the transposition table.
- Added alpha/beta pruning to the SEE function.
- Added support for sliding move generation using the PEXT BMI2 machine code instruction.

Other:
- Include "hashfull" information in UCI output.
- Added UCI option to control whether the transposition table is aged when starting a new search in analysis mode.
jpqy
Posts: 550
Joined: Thu Apr 24, 2008 9:31 am
Location: Belgium

Re: Texel 1.07

Post by jpqy »

Thank you very much Peter..will be tested :!:

JP.
Damir
Posts: 2801
Joined: Mon Feb 11, 2008 3:53 pm
Location: Denmark
Full name: Damir Desevac

Re: Texel 1.07

Post by Damir »

Thanks you very much for the new engine Peter. However I have a little request.

If is not too much for you to put more UCI parameters in your engine, like Sugar and Raubfisch, so that people who test it, will have more fun testing it, against other engines. I also remember older and newer versions of Fruit that also have a lot parameters to tune, and I was wondering if you can do the same with Texel. :) :)
petero2
Posts: 684
Joined: Mon Apr 19, 2010 7:07 pm
Location: Sweden
Full name: Peter Osterlund

Re: Texel 1.07

Post by petero2 »

Damir wrote:Thanks you very much for the new engine Peter. However I have a little request.

If is not too much for you to put more UCI parameters in your engine, like Sugar and Raubfisch, so that people who test it, will have more fun testing it, against other engines. I also remember older and newer versions of Fruit that also have a lot parameters to tune, and I was wondering if you can do the same with Texel. :) :)
Texel actually has a compile time switch to expose all internal parameters as UCI parameters. Here is a version compiled like that:

https://www.dropbox.com/sh/v16dye7ww33x ... 7tuning.7z

You should be aware though that this causes texel to report 872 UCI parameters, which might be more than your GUI can handle. I know at least xboard has problems with that many parameters.

This also makes the engine somewhat slower. I think the slowdown is quite small, but I have not measured it.

It is also possible at compile time to selectively expose only a subset of the internal parameters. Excluding the parameters used for piece-square tables might be a good idea.
Paloma
Posts: 1167
Joined: Thu Dec 25, 2008 9:07 pm
Full name: Herbert L

Re: Texel 1.07

Post by Paloma »

Thank you very much Peter
Damir
Posts: 2801
Joined: Mon Feb 11, 2008 3:53 pm
Location: Denmark
Full name: Damir Desevac

Re: Texel 1.07

Post by Damir »

petero2 wrote:
Damir wrote:Thanks you very much for the new engine Peter. However I have a little request.

If is not too much for you to put more UCI parameters in your engine, like Sugar and Raubfisch, so that people who test it, will have more fun testing it, against other engines. I also remember older and newer versions of Fruit that also have a lot parameters to tune, and I was wondering if you can do the same with Texel. :) :)
Texel actually has a compile time switch to expose all internal parameters as UCI parameters. Here is a version compiled like that:

https://www.dropbox.com/sh/v16dye7ww33x ... 7tuning.7z

You should be aware though that this causes texel to report 872 UCI parameters, which might be more than your GUI can handle. I know at least xboard has problems with that many parameters.

This also makes the engine somewhat slower. I think the slowdown is quite small, but I have not measured it.

It is also possible at compile time to selectively expose only a subset of the internal parameters. Excluding the parameters used for piece-square tables might be a good idea.
Thanks you so much Peter. You are very kind. :D :D
Gusev
Posts: 1476
Joined: Mon Jan 28, 2013 2:51 pm

Re: Texel 1.07

Post by Gusev »

Great news! Will test for the next FOSCEC, with hopes to make up for this year's embarrassing settings mishap.
jpqy
Posts: 550
Joined: Thu Apr 24, 2008 9:31 am
Location: Belgium

Re: Texel 1.07

Post by jpqy »

Wow..that are a lot settings!

Is there a trick when typing uci that we can see in pages or can hold it as list is too long to see everything..

like uci page..and every time press space to see next part to scroll these settings..

Thanks Peter.
User avatar
Werner
Posts: 2871
Joined: Wed Mar 08, 2006 10:09 pm
Location: Germany
Full name: Werner Schüle

Re: Texel 1.07

Post by Werner »

Thanks Peter,
Long awaited - and now out!
Good luck
Werner
Damir
Posts: 2801
Joined: Mon Feb 11, 2008 3:53 pm
Location: Denmark
Full name: Damir Desevac

Re: Texel 1.07

Post by Damir »

Is there some kind of software that will make all 800 parameters visible in Fritz GUI ? :) :)