Skip to content

uSunfish 1.4

Latest

Choose a tag to compare

@fizban99 fizban99 released this 12 Sep 18:32
· 1 commit to main since this release

Updated Windows release of the uSunfish UCI-compatible chess engine

As always, this release provides two Windows builds:

  • uSunfish-1.4-micropython.exe

    • Small self-contained MicroPython executable, around 900 KB
    • Engine code frozen into the executable
    • Uses @micropython.native for performance-critical functions
    • Around 3 MB memory usage
    • Estimated strength: 1330-1430 CCRL Blitz Elo
    • Default hash table: 256 slots (around 384KB)
  • uSunfish-1.4-pypy.exe

    • Launcher using a bundled, abridged PyPy package and repackaged with Enigma Virtual Box for a single exe.
    • Around 50 MB memory usage
    • Estimated strength: 1580-1660 CCRL Blitz Elo
    • Default hash table: 2048 slots (around 3MB)

Compared with the previous version, this release has a marginal increase in Elo, but it incorporates:

  • Reverse futility pruning
  • Reworked null-move pruning:
    • conventional null-move pruning is used at depths 3–7;
    • at depth 8 and above, null move becomes a fixed-target probe for a 1-ply reduction.
  • Search timing has been redesigned to make better use of the available clock.
  • Faster UCI position handling. uSunfish now caches the previous start-position move sequence.
  • Proper ucinewgame support.
  • The embedded opening book has been increased to include more variations.
  • Search-state and transposition-table fixes
  • Several small fixes
  • Deterministic benchmarks bench1 and bench2:
    • bench1 provides a fixed node-budget benchmark suitable for comparing engine/runtime performance.
    • bench2 [depth] searches to a fully converged requested depth