Skip to content

mibere/Ethereal

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Origin

Forked from AndyGrant/Ethereal

Differences to the origin repository

The only difference to the origin repository is an alternative makefile. No changes have been made to the source code of the engine.

Regardless of the speed gain, profile-guided optimization (PGO) should be performed when building a chess engine. Unfortunately, this is not the case with the original makefile for non-native.

The added makefile.alt is used to build Ethereal executables with PGO for AVX2 and BMI2 in a MSYS2 CLANG64 environment.

Note: There is no BMI2 executable on Zen 1 and Zen 2 systems due to slow implementation of PEXT.

Build in MSYS2 CLANG64

Install Clang toolchain

pacman -S --needed base-devel mingw-w64-clang-x86_64-toolchain

For a purchased Ethereal you can build the executables with an included NNUE EvalFile as follows:

mingw32-make -f makefile.alt EVALFILE=<filename> OWNER=<forename>_<surname>

This creates 64-bit executables like Ethereal-14.40-avx2-c5e34.exe and Ethereal-14.40-bmi2-c5e34.exe.

The filenames include the version number found in uci.h and the first five SHA256 characters of the given EVALFILE.

Ethereal NNUE

Read this for information about Ethereal free (Standard) and the commercial NNUE (Efficiently-Updated Neural Network) version.

There is a difference between the two versions...

cutechess-cli -each tc=180+1 option.Threads=1 option.Hash=256 restart=on timemargin=100
  -tournament round-robin -rounds 50 -games 2 -repeat -concurrency 4
  -openings file=openings/UHO_2024_6mvs_+090_+099.pgn format=pgn order=sequential policy=round
  -draw movenumber=80 movecount=20 score=20 -resign movecount=20 score=800 twosided=true -maxmoves 200
  -ratinginterval 2 -wait 3000 [engines]
Score of Ethereal-14.40-avx2-c5e34 vs Ethereal-14.40-avx2: 69 - 1 - 30  [0.840] 100
...      Ethereal-14.40-avx2-c5e34 playing White: 49 - 0 - 1  [0.990] 50
...      Ethereal-14.40-avx2-c5e34 playing Black: 20 - 1 - 29  [0.690] 50
...      White vs Black: 50 - 20 - 30  [0.650] 100
Elo difference: 288.1 +/- 63.3, LOS: 100.0 %, DrawRatio: 30.0 %

ERET with epdtest on AMD Ryzen 5 4600G

epdtest-win64 -e Ethereal-14.40-avx2-c5e34.exe -c 1 -H 512 -t 15 -f ERET.epd

84 best moves found / 106 problems (79.25%); 0 bad Moves found / 5 problems (0.00%)
epdtest-win64 -e Ethereal-14.40-avx2.exe -c 1 -H 512 -t 15 -f ERET.epd

62 best moves found / 106 problems (58.49%); 0 bad Moves found / 5 problems (0.00%)

Arasan Test Suite with epdtest on AMD Ryzen 5 4600G

epdtest-win64 -e Ethereal-14.40-avx2-c5e34.exe -c 1 -H 512 -t 10 -f arasan2023.epd

149 best moves found / 199 problems (74.87%); 0 bad Moves found / 1 problems (0.00%)
epdtest-win64 -e Ethereal-14.40-avx2.exe -c 1 -H 512 -t 10 -f arasan2023.epd

109 best moves found / 199 problems (54.77%); 0 bad Moves found / 1 problems (0.00%)

About

Ethereal, a UCI Chess Engine by Andrew Grant

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 98.3%
  • Makefile 1.1%
  • Python 0.6%