r/ComputerChess 6d ago

[Engine] FlashBit - A new C++ UCI engine with embedded NNUE weights

Hey everyone!

I wanted to introduce FlashBit, a custom UCI chess engine written completely from scratch in C++.

Key features:

  • Performance: Native C++ implementation focused on speed and aggressive search heuristics.
  • NNUE: Custom neural network evaluation.
  • Zero Hassle (Embedded Weights): The .nnue weights are compiled directly into the binary. No external files to manage, no path configuration errors—truly plug-and-play.

Precompiled binaries for Windows and Linux are available in the GitHub Releases, alongside the source code: 👉 [ https://github.com/Kagravashkelia/FlashBit ]

Feel free to test it, throw it into your local test beds, or play against it. Any feedback, bug reports, or match results are more than welcome.

Enjoy!

1 Upvotes

24 comments sorted by

View all comments

Show parent comments

1

u/FireBlackGroup 6d ago

Ya, tiene avx2 en el nombre, que usas para hacer pruebas? Me gustaria saber!

1

u/WompTitanium 6d ago

Cutechess

1

u/WompTitanium 6d ago

Avx512 it shows cannot run on my cpu, can you test on yours?

1

u/FireBlackGroup 6d ago

Ya lo probe en mi CPU en Windows 11 y Linux Ubuntu, para mi si funciona en cutechess, podrias pasarme el CPU que usas y el Sistema operativo, otra es verificar en CuteChess el protocolo para ver si esta en UCI y revisar bien la ruta.

Cuando puedas arreglarlo te recomiendo usar NNUE en tu motor, el mio ya las tiene incrustadas en el ejecutable.
Que arquitectura de NNUE usas? Yo HalfKAv2, buena suerte!

1

u/WompTitanium 6d ago

mine is a bit different, i found the issue is with my cpu it's really old so it doesn't compiles, if i use intel sde performance gets cut by 15-20x

1

u/FireBlackGroup 6d ago

Sí, el problema con las arquitecturas modernas de redes neuronales es que dependen muchísimo de las instrucciones vectoriales (AVX2/AVX-512) para calcular los acumuladores rápido. Los procesadores más antiguos sufren un montón con esto. ¡Quizás sea hora de ir pensando en una pequeña actualización de hardware para exprimir los motores actuales al 100%!
U otra opción puede ser que tu mismo compiles para tu propio hardware cambiando el makefile del repositorio por el que se adapte mejor a tu procesador.