Since you’re here...

We hope you will consider supporting us today. We need your support to continue to exist, because good entries are more and more work time. Every reader contribution, however big or small, is so valuable. Support "Chess Engines Diary" even a small amount– and it only takes a minute. Thank you.
============================== My email: jotes@go2.pl



Hypersion 2.1 - new version chess engine


Hypersion a free, open-source UCI chess engine.
Hypersion uses an NNUE network for evaluation (Stockfish 18 SFNNv10 architecture: HalfKAv2_hm features + FullThreats, big network 1024-d FT, small network 128-d FT) on top of an alpha-beta search with PVS, transposition table, aspiration windows, late-move reductions, singular extensions, ProbCut, futility/razoring/SEE pruning, and lazy-SMP infrastructure (single-threaded by default — multi-thread is currently unstable).
Author: RenCopp

Hypersion 2.1 what's new?

Patch release on top of v2. Headline change: 2-ply continuation history reading in quiet move ordering — was previously dismissed based on an 18-game sample (CI ±170 ELO, basically meaningless), now re-tested at 200 games and shipped.

Validated: +6.9 ± 37.7 ELO over v2-tag at TC 5+0.05 (200 games).

Download

Pick the variant that matches your CPU:

VariantFileCPU support
AVX-VNNI (fastest)Hypersion-2.1-windows-x64-avxvnni.zipIntel Alder Lake (12th gen, 2021+) and newer · AMD Zen 4 (Ryzen 7000+)
AVX2 (recommended fallback)Hypersion-2.1-windows-x64-avx2.zipIntel Haswell (4th gen, 2013+) · AMD Excavator (2015+) and newer
Baseline / SSE2 (slowest, widest support)Hypersion-2.1-windows-x64-baseline.zipAny x86-64 CPU (Pentium 4 2003+)

Not sure? Try AVX-VNNI first — if it fails to start (illegal instruction), step down to AVX2, then to baseline.

Each zip contains Hypersion.exe (~3.4 MB) + both NNUE network files (~107 MB total) + LICENSE + README + release notes.

Mobile / ARM

A native Android (aarch64) build is not yet provided — Termux users on Android can compile from source: make ARCH=native after cloning. The supporting Stockfish 18 NNUE files are architecture-independent and can be reused.

What's new

Engine (the +35 ELO commit)

src/movepick.cpp::score_quiets() now reads 2-ply continuation history at half weight in addition to the existing 1-ply read.

Hypersion was already updating contHist[1] (2-ply lookback) on every cutoff, but never reading it for move ordering. A previous contributor had documented "2-ply tested, regressed -26 ELO" — at 18 games, where statistical noise is ±170 ELO. At 200 games the result is +34.9 ± 39.3 ELO.

Lesson encoded in the source: 18-game samples are useless for A/B testing. Anyone re-testing dismissed features at proper sample size may find more wins.

Tooling / build / config (post-v2 patches included)

  • testing/sprt.py — proper EPD opening book defaults (popularpos_lichess_v3.epd from official-stockfish/books). Old default eco.bin mis-passed as EPD format gave undefined
    cutechess behaviour.
  • lichess-bot-master/config-hypersion.yml (user's local install) — move_overhead: 2000 → 200 (was forfeit-flagging bullet games), Move Overhead: 300 → 100, PGN logging on,
    draw threshold 0 → 50, friendlier greeting.
  • UCI offset curve for UCI_MatchOpponent — bot now plays consistently below opponent's rating across all bands. 600 ELO player faces a 500-ELO bot, narrowing toward exact match at master level.
  • AVX-VNNI build target with -march=alderlake -mavxvnni.
  • 64-byte cache-line alignment on NNUE accumulators.
  • make profile PGO build target fixed.

Bug fixes

  • Repetition-during-search bug fix verified (no more eval-as-winning perpetuals).
  • Close-major-pieces piped-stdio crash bug verified resolved (200-analysis stress test: 0 crashes).
  • 50-move-rule + checkmate edge case fixed.

What was tested but reverted (tombstones in source)

This is the rigorous A/B record from v2 → v2.1:

FeatureResult
SF18 NNUE complexity damping-13.9 ELO
SF18 rule-50 eval damping-13.9 ELO
SF18 multicut condition broadening-22.6 ELO
SF18 SEE pin-aware logic-10.4 ELO
SF18 NMP verification at depth ≥ 16-20.9 ELO
-funroll-loops build flag-22.6 ELO (despite +9% bench)
2-ply contHist FULL weight (vs /2)0.0 ELO equivalent

All within noise (CI ±36-39) but consistently mildly negative — indicating Hypersion is at a hard local optimum, where every isolated change requires re-tuning of surrounding parameters (SPSA territory).

Long-TC validation

Pre-2-ply HEAD vs v2-tag at TC 60+0.6 (200 games): -8.7 ± 38.8 ELO (statistically neutral). The 2-ply contHist read was not in that binary. Long-TC re-test of v2.1 vs v2 deferred to next session.

Compatibility

Same UCI options as v2.0. Drop-in replacement for the engine binary.

CPU requirements

x86_64 with AVX2 + AVX-VNNI (Intel Alder Lake 12th gen+ /
Raptor Lake 13th & 14th gen / AMD Zen 4+). On older CPUs without
VNNI, build from source with make ARCH=x86-64-avx2.


Comments