Gaia 4.1.0 — Back after 20 years

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

Moderator: Ras

Frank Quisinsky
Posts: 7264
Joined: Wed Nov 18, 2009 7:16 pm
Location: Gutweiler, Germany
Full name: Frank Quisinsky

Re: Gaia 4.1.0 — Back after 20 years

Post by Frank Quisinsky »

Hi Jean-Francois,

at first, thanks for your engine!

On my Intel i9-10900k I have problems to load the AVX2 compile.
Could you create a BMI2 compile?

Furthermore, NOD32 Internet Security Ultimate detected for all three available Gaia versions (4.10, 4.11, 4.12) a virus.
Sure, a wrong alarm.

Programs between the TOP-275 I have the same problem are:
- the old Shallow Guess 0.4.0
- FoxChess 1.0
- Reyna 1.0

If you have time, maybe you can check this?

Best
Frank
j_romang
Posts: 93
Joined: Mon May 16, 2011 2:52 am

Re: Gaia 4.1.0 — Back after 20 years

Post by j_romang »

Hi Frank,

Thanks for the kind words and for reporting these issues!

AVX2 loading problem: I'm quite sure the loading issue is actually caused by your NOD32 antivirus quarantining or blocking the executable before it can start. The i9-10900K fully supports AVX2 and all the instructions in that build, so the hardware is not the problem. Could you try adding an exception in NOD32 for the GaiaChess executable and see if that fixes it?

Regarding a BMI2 build specifically: unlike Stockfish, GaiaChess uses magic bitboards rather than PEXT for move generation, so a separate BMI2 build would be identical to the AVX2 one. The nnue-avx2 variant is the correct one for your CPU.

Antivirus false positives: This is unfortunately a well-known issue with Rust programs cross-compiled for Windows from Linux using the MinGW toolchain. The binary patterns produced by MinGW's runtime combined with PGO profiling trigger heuristic/ML-based detections in many antivirus engines. Even widely-used Rust tools like ripgrep and the Rust installer itself suffer from the same problem. FoxChess and Reyna, two of the engines you mentioned, are also written in Rust and most likely cross-compiled with the same toolchain — which explains why they trigger the same detections.

I'll look into switching the Windows builds to the MSVC toolchain which produces significantly fewer false positives. In the meantime, you can safely add an exception for the GaiaChess executables in your NOD32 settings.

Best regards,
Jean-François
Frank Quisinsky
Posts: 7264
Joined: Wed Nov 18, 2009 7:16 pm
Location: Gutweiler, Germany
Full name: Frank Quisinsky

Re: Gaia 4.1.0 — Back after 20 years

Post by Frank Quisinsky »

Hi Jean-Francois,

thanks for your answer.

I excluded the AVX2 executable from detection in the advanced Eset NOD settings on my Intel i9-10900k system.
Before I wrote my bug-report here ... with other words ... I know what I can do with Eset NOD.

No chance to load your AVX2 compile on Intel-i9-10900k.
So I am thinking something is wrong with the AVX2 compile.

I have also stopped the complete NOD32 Secruity without success.

No problems with my second system, an AMD 5950x.
Here I am using your ZEN3 compile.
Of course, I excluded the ZEN3 executable from detection in the advanced Eset NOD settings also.

Let me start again on Intel i9-10900k with ucidebug (I am using Shredder 12 GUI, Windows 11 Pro):

Code: Select all

### 79.: to Gaia 4.1.2 Test (0): quit

### 80.: to Gaia 4.1.2 Test (0): uci

### 81.: to Gaia 4.1.2 Test (0): debug on

### from Gaia 4.1.2 Test (0): id name Gaia 4.1.2

### from Gaia 4.1.2 Test (0): id author Jean-Francois Romang

### from Gaia 4.1.2 Test (0): option name Hash type spin default 16 min 1 max 1048576

### from Gaia 4.1.2 Test (0): option name Threads type spin default 1 min 1 max 256

### from Gaia 4.1.2 Test (0): option name EvalFile type string default <internal>

### from Gaia 4.1.2 Test (0): option name Ponder type check default true

### from Gaia 4.1.2 Test (0): option name MultiPV type spin default 1 min 1 max 256

### from Gaia 4.1.2 Test (0): option name SyzygyPath type string default <empty>

### from Gaia 4.1.2 Test (0): uciok

### 82.: to Gaia 4.1.2 Test (0): setoption name Hash value 128

### 83.: to Gaia 4.1.2 Test (0): isready

### from Gaia 4.1.2 Test (0): readyok

setoption name Ponder value false

### 84.: to Gaia 4.1.2 Test (0): setoption name Ponder value false

### 85.: to Gaia 4.1.2 Test (0): isready

### from Gaia 4.1.2 Test (0): readyok

Engine: Gaia 4.1.2 Test (128 MB)
by Jean-Francois Romang
Hm, now it works.
I say that again and again ... I am to old for all this.
Yesterday Gaia will not start on my Intel i9-10900k.

OK, then I'll just claim the opposite and hope no other read that ...


Hm, with syzygy Gaia 4.12 works also ...

Code: Select all


### 116.: to Gaia 4.1.2 Test [new] (0): quit

### 117.: to Gaia 4.1.2 Test [new] (0): uci

### 118.: to Gaia 4.1.2 Test [new] (0): debug on

### from Gaia 4.1.2 Test [new] (0): id name Gaia 4.1.2

### from Gaia 4.1.2 Test [new] (0): id author Jean-Francois Romang

### from Gaia 4.1.2 Test [new] (0): option name Hash type spin default 16 min 1 max 1048576

### from Gaia 4.1.2 Test [new] (0): option name Threads type spin default 1 min 1 max 256

### from Gaia 4.1.2 Test [new] (0): option name EvalFile type string default <internal>

### from Gaia 4.1.2 Test [new] (0): option name Ponder type check default true

### from Gaia 4.1.2 Test [new] (0): option name MultiPV type spin default 1 min 1 max 256

### from Gaia 4.1.2 Test [new] (0): option name SyzygyPath type string default <empty>

### from Gaia 4.1.2 Test [new] (0): uciok

### 119.: to Gaia 4.1.2 Test [new] (0): setoption name Hash value 256

### 120.: to Gaia 4.1.2 Test [new] (0): isready

### from Gaia 4.1.2 Test [new] (0): readyok

setoption name Ponder value false

### 121.: to Gaia 4.1.2 Test [new] (0): setoption name Ponder value false

setoption name SyzygyPath value c:\Chess\_syzygybases-5

### 122.: to Gaia 4.1.2 Test [new] (0): setoption name SyzygyPath value c:\Chess\_syzygybases-5

### 123.: to Gaia 4.1.2 Test [new] (0): isready

### from Gaia 4.1.2 Test [new] (0): readyok

Engine: Gaia 4.1.2 Test [new] (256 MB)
by Jean-Francois Romang
But fact is that I excluded the AVX2 executable before I wrote my bug-report here and I made today no changes in NOD.
My system kidding me.

OK ... go Gaia go ... will be test soon.
And the Engine-World is fully OK for today.

:-)

Best
Frank
Frank Quisinsky
Posts: 7264
Joined: Wed Nov 18, 2009 7:16 pm
Location: Gutweiler, Germany
Full name: Frank Quisinsky

Re: Gaia 4.1.0 — Back after 20 years

Post by Frank Quisinsky »

Sorry Jean-Francois !!!
j_romang
Posts: 93
Joined: Mon May 16, 2011 2:52 am

Re: Gaia 4.1.0 — Back after 20 years

Post by j_romang »

Hi Frank,
No need to apologize at all! 😄 These things happen — computers have a way of making us all feel a bit crazy sometimes. I'm really glad it's working now on your i9-10900K!
Your initial report was still very valuable — the antivirus false positive issue is real and worth addressing regardless. I'll keep working on switching to the MSVC toolchain for Windows builds to make life easier for everyone.
Looking forward to seeing Gaia's results in your tests! Hope she behaves well. 🙂
Best regards,
Jean-François
j_romang
Posts: 93
Joined: Mon May 16, 2011 2:52 am

Re: Gaia 4.1.0 — Back after 20 years

Post by j_romang »

New release fixing a Syzygy tablebase bug at the root: the engine could loop on the same move in won TB positions instead of making progress.

Thanks to Werner Schüle for spotting this.

Download (Windows x64): https://github.com/jromang/gaiachess/releases/tag/4.1.3

Third time's the charm — I hope Syzygy tablebases are finally properly integrated this time!
User avatar
Graham Banks
Posts: 45434
Joined: Sun Feb 26, 2006 10:52 am
Location: Auckland, NZ

Re: Gaia 4.1.0 — Back after 20 years

Post by Graham Banks »

Just passing on a message. :)
Dio (CEGT) — 10:34 am
We need a compile with the MSVC toolchain. The current version 4.1.3 also triggers a virus alert (Avira) on Werner's computer.
gbanksnz at gmail.com