Skip to content

Compile v0.2.0 : adjusted code (Linux) #5

@tissatussa

Description

@tissatussa

I know this is a rather old project, but i have some info to share. I found your engine in the README of the chess engine 'Princhess', see https://github.com/princesslana/princhess/

At first i had troubles compiling - i'm on Linux (Xubuntu 22.04). A Rust 'nightly' version must be used, which was not easy for me, but i succeeded by consulting ChatGPT, see https://chatgpt.com/share/ce66748c-33ab-4756-a5b6-30159d41e736 - i had to change several things in the code files to make it work. At the end of the ChatGPT page i give a link to the corrected code package. It also contains 0_INFO.txt which holds this (extra) information :


Compile like this :

cargo +nightly-2019-12-01 build --release --all

According to README, the Rust 'nightly' version must be used, but it seems you have to use an older version, because the code is from 2019.

The number of threads is a fixed amount, and this can be an issue.
On Oct 19, 2021 AlexBrunetti commented (see #4 ) :
Hi, the executable works fine but Sashimi takes all available CPU threads: may you add an UCI option, usually called Threads, so that the user can choose the number of threads? [...]

But i found the number of threads can be adjusted in /engine/src/args.rs. The original code is :

let num_threads = num_cpus::get();

So, i tried :

let num_threads = 1;

and this works, the engine can even run with 1 thread.


Letting Sashimi play a game in CuteChess GUI gives a problem : the engine can't be initialised. However, in terminal all seems well. To discover the cause, i tried to run CuteChess GUI 'inside' a debugger (gdb), but this had a weird side effect : now Sashimi can play, the initialisation error message doesn't appear. This initialisation error can be caused by a 'race condition', which doesn't happen when running inside a debugger. See also my last ChatGPT questions. Anyhow, i guess something is wrong in the code, maybe concerning threads, i have no clue. Btw. this happens with both multi-thread and 1 thread.

Another problem is time management : it seems Sashimi takes (exactly) 10 seconds for every move and thus loses on time in most games. I didn't find a solution for this. It's a pitty, because this way Sashimi is almost useless in practice.


Do you consider fixing those problems ? Or is this project finished ?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions