Skip to content
Home » REVOLUTION-6.40-150926

REVOLUTION-6.40-150926

Revolution-6.40-150926 — Official IJCCRL Release
Stockfish-derived • Strict single-net • Stockfish-dev Sep 13 topology • Windows Universal + SSE4.1/POPCNT verified • zero warnings / zero errors
✓ IJCCRL Verified

Revolution-6.40-150926 supersedes Revolution-6.10-310726 as the current IJCCRL-maintained Revolution release. The update is substantially larger than an identity change: the maintained source line was advanced chronologically from the July 26 Stockfish-dev topology to the accepted September 13, 2026 endpoint 031dfeb437fa6b06cdbdf4ef89dfb82f6b83c4d3, the active NNUE was changed from nn-ab28990d4ea3.nnue to nn-134a887f4c8f.nnue, multiple search, time-management, platform and CI changes were integrated, and a historical Windows std::filesystem prerequisite was finally completed before closing the Universal build.

This is a controlled source-maintenance, topology-integration, release-identity and build-validation release. Every Stockfish block was handled chronologically against the actual Revolution tree rather than by replacing the derivative code wholesale. Revolution-specific Book, Experience, Learning, Zobrist, Dynamic Evaluation, NNUE extensions, Syzygy and Universal-dispatch surfaces were preserved. No Elo gain or tournament superiority is claimed here.

Release status
Current version Revolution-6.40-150926
Previous HTML version Revolution-6.10-310726
Accepted Stockfish endpoint Sep 13 — 031dfeb4
Active NNUE nn-134a887f4c8f.nnue
Validated Windows targets Universal + SSE4.1/POPCNT
Final build state 0 warnings • 0 errors
What changed compared with Revolution-6.10-310726
  • Release identity: the formal UCI release identity advances from Revolution-6.10-310726 to Revolution-6.40-150926. Architecture-aware informational output continues to identify the compiled target, while the formal id name remains architecture-independent.
  • Stockfish topology: the previous HTML stopped at the accepted July 26 topology. The current source closes the chronological update chain through September 13, 2026, ending at 031dfeb437fa6b06cdbdf4ef89dfb82f6b83c4d3.
  • NNUE authority: the current default network is now nn-134a887f4c8f.nnue, replacing nn-ab28990d4ea3.nnue from Revolution-6.10.
  • Search maintenance: the update incorporates the accepted aspiration fail-high recovery depth logic, prior-NMP fail-high handling, linear razoring maintenance, quiet-history scaling, continuation-history overflow correction and the other chronological search changes present in the accepted Stockfish blocks.
  • Time-management maintenance: the source now includes the accepted cyclic/nodestime corrections, scaled-time clamp, move-horizon handling and time-disadvantage scaling while preserving Revolution’s local centiMTG topology.
  • Filesystem and Windows path topology: the historical Stockfish prerequisite 22548cb0c0197079e0c6337b370061addf1d09fa was completed where Revolution still had an old Logger::start(const std::string&) signature. It now consistently uses const fs::path&.
  • Universal build closure: after the path repair, the real Windows/MinGW Universal build compiled all eight embedded x86 slices and linked the final Revolution-6.40-150926-x86-64-universal.exe.
  • Release authorship: the public author line is now exactly Jorge Ruiz Centelles and the Stockfish developers (see AUTHORS file), with no duplicated author or Stockfish credit.
  • Build quality: both the final Universal build and the standalone SSE4.1/POPCNT profile-build completed with zero warnings, zero compiler errors, zero undefined references/symbols and zero linker blockers.
  • Derivative surfaces: Book, Experience, Learning, Zobrist, Dynamic Evaluation, Syzygy, the single public EvalFile option and the Universal dispatcher were preserved throughout the update.
Side-by-side technical comparison
Release propertyPrevious: 6.10Current: 6.40
Base identityRevolution-6.10-310726Revolution-6.40-150926
Accepted Stockfish topologyThrough Jul 26, 2026Through Sep 13, 2026 — 031dfeb4
Active NNUEnn-ab28990d4ea3.nnuenn-134a887f4c8f.nnue
Formal UCI identityRevolution-6.10-310726Revolution-6.40-150926
Author identityJorge Ruiz + Stockfish developersJorge Ruiz Centelles + Stockfish developers
Validated current Windows binariesSSE4.1/POPCNT + AVX2Universal + SSE4.1/POPCNT
Universal public identityNot documented in previous HTMLRevolution-6.40-150926-universal
Windows path topologyHistorical mixed string/path stateLogger/start_logger consistently use fs::path
Final warning/error stateZero warnings/errors on documented targetsZero warnings/errors on Universal and SSE41/POPCNT
Reference benchPrevious-release baseline1,216,455 nodes
Forensic tree identity — current release
Release and build authority
src/Makefile:
ENGINE_BASENAME = Revolution
RELEASE_TAG     = 6.40-150926

Active NNUE:
nn-134a887f4c8f.nnue

Final accepted Stockfish endpoint:
031dfeb437fa6b06cdbdf4ef89dfb82f6b83c4d3

Formal UCI:
id name Revolution-6.40-150926

UCI author:
id author Jorge Ruiz Centelles and the Stockfish developers (see AUTHORS file)

SSE4.1/POPCNT informational identity:
Revolution-6.40-150926-sse41popcnt

Universal informational identity:
Revolution-6.40-150926-universal

Validated Windows binaries:
Revolution-6.40-150926-sse41popcnt.exe
Revolution-6.40-150926-x86-64-universal.exe

The formal UCI engine name intentionally remains architecture-independent. Architecture is exposed through startup/informational identity and the executable name. For Universal, the public runtime identity remains -universal even when an optimized internal slice is selected.

Chronological update process
Method used to update Revolution without replacing its derivative topology
  1. Audit the real Revolution tree: every block was applied against the actual source, preserving Book, Experience, Learning, Zobrist, Dynamic Evaluation, NNUE extensions, Syzygy and Universal-specific code.
  2. Recover missing historical prerequisites first: where later official commits depended on earlier infrastructure, the exact upstream prerequisite was recovered rather than approximated or skipped.
  3. Apply Stockfish chronologically: official commits were handled in order and classified as applied, locally adapted, already exact or proven no-op equivalent.
  4. Adapt only where Revolution topology required it: upstream semantic deltas were preserved without blind whole-file replacement.
  5. Change NNUE only when required: the final network was closed on nn-134a887f4c8f.nnue.
  6. Close the Stockfish target before rebranding: the full target was completed through Sep 13 before changing the public Revolution release identity.
  7. Perform the release-only rebrand: current identity/documentation surfaces changed to Revolution-6.40-150926.
  8. Revalidate Windows builds: Universal and SSE4.1/POPCNT were built with Clang/LLD and treated as failed if any warning, compiler error or linker blocker appeared.
  9. Repair the real Universal blocker surgically: the stale Logger string signature was replaced by the official fs::path form, with no Makefile, NNUE, search or Universal-dispatch rewrite.
  10. Validate runtime: UCI identity, isready, NNUE loading and real search were verified on the final binaries.
Accepted topology milestones after Revolution-6.10
August 24, 2026 — platform, paths and search closure
- completed the historical filesystem/path prerequisite required by later path work
- integrated NativeThread fixes and cleanup
- preserved POSIX thread failure handling
- integrated MSVC warning and valgrind-harness maintenance
- integrated ANSI-path handling
- integrated the accepted seekMate extension/futility changes
- Revolution-specific overlays preserved
August 25, 2026 — search, memory and timing maintenance
- PV-extension / nodestime maintenance
- macOS compile fix
- CI cache maintenance
- mmap large aligned allocation support
- contributor metadata update
- optimism-scaling formula update
- no Revolution Book / Experience / Zobrist regression
August 29 to September 4 — incremental topology closure
- MAP_FAILED handling
- HalfKAv2_hm cleanup and incremental update work
- cyclic time-control move-horizon fix adapted to Revolution centiMTG
- WDL model update
- continuation-history overflow correction
- cctype undefined-behaviour corrections
- nodestime scaled-time bug fix
- miscellaneous/comment-only official topology preserved where applicable
September 5, 2026 — Stockfish 19 release marker
- official Stockfish release marker classified as a protected-derived-identity no-op
- no Revolution source change required
- Revolution release identity remained independent from Stockfish's public version string
September 9, 2026 — major post-release development block
- nullptr SearchManager topology
- prior NMP fail-high handling
- linear razoring
- time-disadvantage scaling
- MovePicker local accumulator work
- cyclic nodestime update
- debug-return cleanup
- quiet-history scaling
- PawnPushOrAttacks removal with exact Revolution namespace adaptation
- AVX2 compiler CI maintenance
- sanitizer -ftrapv maintenance
September 13, 2026 — final Stockfish target block
1. Expand go-mate CI coverage
2. Integrate failHighRecovery aspiration-depth handling
3. Harden reproducibility checks
4. Update active NNUE to nn-134a887f4c8f.nnue
5. Optimize both_attacks_bb()
6. Add explicit <iterator> dependency to NUMA code
7. Remove the unused global constexpr LSB helper while preserving Revolution's active local NNUE helper

Final official endpoint:
031dfeb437fa6b06cdbdf4ef89dfb82f6b83c4d3
September 15, 2026 — final release identity
- rebrand to Revolution-6.40-150926
- exact author identity: Jorge Ruiz Centelles and the Stockfish developers (see AUTHORS file)
- formal UCI id remains architecture-independent
- informational identity remains architecture-aware
- Universal public identity remains -universal
- no chess semantics changed during rebrand
P0A17 — Windows/MinGW Universal path repair
Observed blocker:
Logger::start(const std::string&)
received const fs::path& from start_logger()

Historical upstream authority:
22548cb0c0197079e0c6337b370061addf1d09fa

Exact repair:
static void start(const std::string& fname)
->
static void start(const fs::path& fname)

Scope:
src/misc.cpp only
one semantic type change
no search change
no NNUE change
no Makefile change
no Universal-dispatch change
NNUE and evaluation state
Current single-net authority
Active default network:
nn-134a887f4c8f.nnue

Validated SHA-256:
134a887f4c8ff7bf7284177a3b3fc6ff9cef95ba89eb8db3079a8e507f7126af

Public UCI surface:
option name EvalFile type string default nn-134a887f4c8f.nnue

EvalFileSmall:
absent
Windows x86-64 Universal validation
Final production build
Target:
ARCH=x86-64-universal

Compiler:
x86_64-w64-mingw32-clang++

Linker:
LLD via -fuse-ld=lld

Physical executable:
Revolution-6.40-150926-x86-64-universal.exe

Public informational identity:
Revolution-6.40-150926-universal

Embedded x86 slices:
x86-64
x86-64-sse41-popcnt
x86-64-avx2
x86-64-bmi2
x86-64-avxvnni
x86-64-avx512
x86-64-vnni512
x86-64-avx512icl

Final compiler warnings:
0

Final compiler errors:
0

Undefined references / symbols:
0

Linker blockers:
0

SHA-256:
4fab852d96ed36a0086bfd9b6aed00a1230b942bcc18c641138c734eb8102a81

The Universal package keeps the public -universal identity regardless of which optimized internal slice is selected at runtime.

Windows SSE4.1/POPCNT profile-build validation
Final production build
Target:
ARCH=x86-64-sse41-popcnt

Compiler:
x86_64-w64-mingw32-clang++

Linker:
LLD via -fuse-ld=lld

Build mode:
profile-build with PGO and full LTO

Physical executable:
Revolution-6.40-150926-sse41popcnt.exe

Informational identity:
Revolution-6.40-150926-sse41popcnt

Final compiler warnings:
0

Final compiler errors:
0

Undefined references / symbols:
0

Linker blockers:
0

SHA-256:
5896132641a6890d04f580fe2899881955b69442d596e561d8f94ff1ac72d5a2
UCI, runtime and regression validation
Observed final identities and gates
Formal UCI:
id name Revolution-6.40-150926

Author:
id author Jorge Ruiz Centelles and the Stockfish developers (see AUTHORS file)

Universal startup / analysis:
Revolution-6.40-150926-universal

SSE4.1/POPCNT startup / analysis:
Revolution-6.40-150926-sse41popcnt

Default NNUE:
option name EvalFile type string default nn-134a887f4c8f.nnue

Protocol:
uciok
readyok

Runtime:
NNUE loaded successfully
bestmove returned successfully

Perft 5 reference:
4,865,609

Bench reference:
1,216,455 nodes

The first-run message Experience file not found: experience.exp is informational when no local Experience database exists. It is not a compiler, linker, NNUE or runtime failure.

Preserved Revolution-specific surfaces
  • Book: CTG/BIN Book 1 and Book 2 remain present.
  • Experience: enable, file, readonly and Experience Book controls remain present.
  • Learning: the established derivative learning/persistence topology remains preserved.
  • Zobrist: Position, Experience and Revolution-specific Zobrist surfaces were preserved.
  • Dynamic Evaluation: the Revolution option remains present.
  • Search controls: Threads, Hash, Ponder, MultiPV, Skill Level and strength limiting remain present.
  • Tablebases: Syzygy path, probe depth, 50-move rule and probe limit remain present.
  • NNUE: a single public EvalFile surface remains active.
  • Universal dispatcher: preserved with architecture-aware internal selection and stable public -universal identity.
  • Absent surfaces: EvalFileSmall remains absent.
Build naming by validated target
Windows SSE4.1/POPCNT:
Revolution-6.40-150926-sse41popcnt.exe

Windows Universal physical package:
Revolution-6.40-150926-x86-64-universal.exe

Universal public informational identity:
Revolution-6.40-150926-universal

Generic ordinary-build naming rule:
Revolution-6.40-150926-<compiled-architecture-suffix>

Formal UCI identity for all variants:
id name Revolution-6.40-150926
What remains intentionally unchanged
  • Derived-engine identity: Revolution remains a Stockfish-derived engine with its own release identity rather than adopting the upstream Stockfish public version string.
  • Strict single-net surface: one current default NNUE and one public EvalFile surface remain authoritative.
  • Book / Experience / Learning: the update preserves these derivative facilities rather than replacing them with an upstream-only tree.
  • Syzygy and Zobrist: no tablebase contract or Zobrist-identity reset was introduced.
  • Universal public identity: the runtime-selected internal slice does not change the public -universal identity.
  • Rating status: source closure and clean compilation are not substitutes for controlled tournament results.
What this release does not claim
  • No Elo gain is claimed without separate controlled IJCCRL rating evidence.
  • No new Book, Experience or Learning subsystem is claimed.
  • No warning or error was hidden with compiler flags to obtain the final clean build state.
  • No post-031dfeb4 Stockfish commit is claimed in this release.
  • No standalone AVX2/BMI2/AVX512 executable is represented here as a separately validated 6.40 release binary.
  • The embedded optimized slices inside the Universal package are part of the validated Universal build, not separate publication binaries.
Audit conclusion

Revolution-6.40-150926 is the current maintained Revolution release after the chronological Stockfish-dev update through the accepted September 13, 2026 endpoint 031dfeb437fa6b06cdbdf4ef89dfb82f6b83c4d3, the transition to nn-134a887f4c8f.nnue, the final September 15 identity rebrand and the isolated P0A17 Windows filesystem-path repair. Compared with Revolution-6.10-310726, the new release carries substantial search, timing, platform, NNUE and maintenance work while preserving Revolution’s Book, Experience, Learning, Zobrist, Dynamic Evaluation, Syzygy and Universal architecture. The final Windows Universal and SSE4.1/POPCNT builds completed with zero warnings, zero compiler errors and zero linker blockers, and their UCI identity, readyok, NNUE loading and runtime search checks passed.

DOWNLOAD