Fire 8.NN.MC.3
-
08/11/2021
-
uci option nnueEvalFile (name and path of NNUE evaluation file)
-
uci option MinimumTime (minimumtime for a move)
-
uci option MoveOverhead (time buffer for each move)
-
bench now utilizes 3 chess960 (FRC) positions for additional PGO compile optimizations
-
redundant code removed
-
ReSharper C++ code optimizations
-
Chess960 (Fischer Random Chess) castling bug fix
-
open source https://github.com/FireFather/fire-NN
Fire 8.NN.MC.2
-
08/02/2021
-
this release addresses several issues with Fire_8.NN.MC.1
see https://github.com/FireFather/fire/issues for details -
open source https://github.com/FireFather/fire-NN
Fire 8.NN.MC.1
-
07/29/2021
-
MCTS works properly if > 2 threads only...hack: if 1 thread chosen, it defaults to 2 threads
-
open source https://github.com/FireFather/fire-NN
Fire 8.NN.MC
-
07/27/2021
-
MCTS-UCT (Monte Carlo Tree Search w/ Upper Confidence Bounds Applied to Trees)
-
open source https://github.com/FireFather/fire-NN
Fire 8.NN.1
-
06/03/2021
-
this release fixes multiPV and EngineMode 'classic' eval issue
-
open source https://github.com/FireFather/fire-NN
Fire 8.NN
-
05/28/2021
-
optimized NNUE interface
-
open source https://github.com/FireFather/fire-NN
​
Fire 8.N
-
05/22/2021
-
uci option EngineMode choose classic, NNUE (default), or random.
-
reads engine.conf on startup for search, eval, pawn, and material parameters
-
NNUE support
-
open source https://github.com/FireFather/fire
No NNUE:
​
Fire 8.2
-
02/15/2022
-
code improvements
-
optimizations
-
speed improvement
-
open source https://github.com/FireFather/fire-NN
Fire 8.11
-
04/27/2021
-
this is a feature-only release with no improvement in strength
-
UCI option SearchType (choose alphabeta or random)
-
random implemented w/ C++11 uniform_real_distribution & mersenne_twister_engine
-
NDEBUG asserts tested and tweaked
-
void position::init() zobrist now gets random seed using std::chrono::system_clock
-
open source https://github.com/FireFather/fire
​
Fire 8.1
-
04/16/2021
-
eval changes
-
further code optimization via Clang, Re-Sharper, and VS Code Analysis
-
more detailed output for Bench, Perft, and Divide functions
-
tuner additions & enhancements
-
UCI option SyzygyProbeLimit
-
asychronous cout (acout) class using std::unique_lock<std::mutex>
-
open source https://github.com/FireFather/fire
-
GPL licensed
​
Fire 8
-
02/23/2021
-
source code upgraded to C++17
-
code highly optimized using Clang, Re-Sharper, and VS Code Analysis
-
all compiler warnings now resolved up to and including Level 4
-
Linux support
-
high precision benchmark utility
-
fast command-line and UCI dialog perft & divide functions
-
time-stamped (bench & perft) log files
-
smaller & highly tuned evaluation (significant strength & speed increase)
-
increased search depth
​
Fire 8 beta
-
05/24/2020
-
private test version for participation in TCEC and CCC
Fire 7.1
-
05/27/2018
-
significant maintenance release which addresses multiple critical issues:
-
- losses on time in Arena GUI
-
- loss of communication to GUI while pondering
-
- multi-threading crashes with 'unknown exception' error
-
- freezing/unpredictable behavior due to buffer under/over runs
-
It is highly recommended to upgrade any previous Fire 7 binaries to this release
Fire 7
-
05/21/2018
-
SMP reworked
-
evaluation improvements
-
search improvements
-
change in the way nodes are counted
-
30-40 Elo stronger than Fire 6.2 (TCEC 11)
​
Fire 6.1
-
09/23/2017
-
maintenance release which fixes a bug concerning the display of PVs
-
no other changes, and no increase in playing strength
Fire 6
-
09/22/2017
-
significant parameter tuning
-
pawn play improvements
-
positional evaluation improvements
-
small improvement in search
-
modest increase in playing strength
​
Fire 5
-
11/14/2016
-
improved search
-
several new eval clauses
-
pst, eval, and search parameters fine tuned via SPSA
-
improved endgame play
-
UCI contempt parameter added
-
Syszygy 50-move rule UCI parameter added
-
chess960 support added
-
large increase in playing strength
​
Fire 4
-
12/6/2014
-
new search
-
new and improved eval
-
humanistic analysis
-
extensive search, pst, and eval parameter tuning
-
improved material table initialization and phase calculation
-
common endgame eval routines
-
thread local storage SMP up to 64 threads
-
support for Syzygy endgame tablebases
-
significant increase in playing strength
Fire 3.0
-
12/13/2013
-
significant strength increase
-
options removed
-
code optimizations
-
speed increase
-
eval terms added
-
search improved (reductions and extensions)
-
'bench' utility improved
Fire 2.2 xTreme
-
7/06/2011
-
open-source
-
magic bitboards
-
true SMP parallel search
-
configurable pawn hash
-
ponder
-
searchmoves
-
multiPV
-
benchmark utilities
-
multi positional gain (for each CPU/core/thread)
-
multi history (for each CPU/core/thread)
-
robbobase support (up to 6 piece endings)
-
70+ UCI/fire.cfg options
-
random configuration generation
-
optional timestamped I/O log file
Fire 2.1 xTreme
-
6/27/2011
-
open-source
-
maintenance release
-
MultiPV fixed...
Fire 2.0 xTreme
-
6/26/2011
-
open-source
-
supports up to 64 cores/threads
-
occasional crash fixed
-
code improvements, bitwise optimizations
-
SEE piece/capture values are no longer constant entities
-
fire.cfg incorrect default value for Prune_Pawn fixed: Prune_pawn = 160
-
Fire now recognizes whether or not the system supports hardware popcount and/or large pages, and self-configures itself accordingly
-
some code cleanup, formatting, and re-organization
-
more complete Log implementation
-
UCI clear hash button added
Fire 2.0 xTreme beta
-
6/24/2011
-
open-source
-
Optional configuration file creation options:
-
Simply type:
-
'default' (generates a fire.cfg w/ default parameters)
-
or:
-
'random' (generates a fire.cfg w/ random parameters)
-
'rand_eval' (generates a fire.cfg w/ random evaluation parameters)
-
'rand_material' (generates a fire.cfg w/ random material value parameters)
-
'rand_prune' (generates a fire.cfg w/ random search prune parameters)
-
'rand_search' (generates a fire.cfg w/ random search parameters)
-
'rand_time' (generates a fire.cfg w/ random time management parameters)
-
at the console prompt to generate a unique fire.cfg file.
Fire 1.5 xTreme
-
5/31/2011
-
open-source
-
Triplebases (TBHit) fixed
-
Historic Piece Values can now be changed 'on-the-fly
-
Ahmed default piece values implemented:
-
100, 320, 335, 515, 1000
-
Top Min Depth min/max values inversion
-
option Draw Weight added
-
5 TM options added:
-
AbsoluteFactor
-
BattleFactor
-
EasyFactor
-
EasyFactorPonder
-
NormalFactor
-
TM algorithms from 1.4 beta
-
SMP up to 16 cores
Fire 1.4 xTreme beta 2
-
5/29/2011
-
open-source
-
Historic Piece Value bug fixed
-
Aspiration Window option added
-
Min Trans Move Depth option added
-
Positional Weight added
-
Static Weight->PST Weight
-
Time Management from Fire 1.32
-
some code cleanup
Fire 1.4 xTreme beta
-
5/28/2011
-
open-source
-
extreme user configurability:
-
all system, search, eval, and material parameters available via an external config file or GUI UCI option dialog box
-
support for 6-piece Robbobases
-
ELO increase
-
random fire.cfg generation
-
21 historic piece value sets
Fire 1.32
-
5/26/2011
-
open-source
-
maintenance release one year after original release
-
fixes UCI and fire.cfg piece value change issue
-
(thx to Matt Weaver for identifying this)
-
knight = 320
-
bishop = 330
-
queen = 980
-
tr and col changed to rank and file for improved source code readability/consistency
-
the above changes are mainly functional and likely do not affect overall strength (ELO)
Fire 1.31
-
5/30/2010
-
open-source
-
maintenance release
-
with Fire 1.2 and 1.3, Totalbases and Triplebases can be configured to autoload on engine startup only via the fire.cfg file, so i've added 2 new UCI options, and associated code, which enables configuration of 'autoloading of Robbobases' via UCI GUIs:
-
Autoload Totalbases
-
Autoload Triplebases
-
id name and id author are now placed outside of 'if
-
(CfgFound)' statement in static void uci()
-
this was causing Fire 1.3 to not load in Fritz and CB
-
Hash size wasn't being read properly if using fire.cfg
-
this has now been fixed
Fire 1.3
-
5/28/2010
-
open-source
-
new/faster bitboard LSB/MSB routines
-
mutually exclusive fire.cfg/UCI GUI options
-
phase-scaled piece values improved
-
QSearch fix/improvement
-
MaxThreads = 256
-
several new/improved eval routines
-
phase multiplier fix
-
code cleanup
-
speed improvement
-
MultiPV now automatically disabled in 'game' mode
-
several small bugfixes
-
UCI options added:
-
Lazy Eval 1
-
Lazy Eval 2
-
UCI_EngineAbout
-
AspirationWindow
-
Split At CN
-
Split At EN
-
ANSplitDepth
-
ENSplitDepth
-
PVSplitDepth
-
Contempt
-
Material Weight
-
Positional Weight
-
UseRobboBases
-
Low Depth PVs
-
Time Info
-
Verbose UCI
-
UCI_EngineAbout
-
UCI options removed:
-
NMR Smooth Scaling
-
Extra Info
Fire 1.3 Thuringen
-
not publicly released
-
participated in 2010 Thuringen (Germany) tournament
Fire 1.2
-
3/5/2010
-
SMP improvements/changes
-
major RobboTripleBase bug fix
-
support for new RobboTriple/Total Blocked (Z) bases added
-
improved hash functions
-
UCI options added: UCI_AnalyseMode, CPU Load Info, Current Move, Depth Info, Hash Full Info, TB Hits Info, Time Info
-
UCI options removed: Analysis Mode, Extra Info, Multi History, Multi Positional Gain
-
NMR Smooth Scaling renamed NMR Scaling
-
(Null Move Reduction Scaling)
Firebird 1.1
-
2/15/2010
-
support for RobboTripleBases and RobboTotalBases added
-
reads Fire.cfg parameters file on startup
-
writes (optional) time-stamped I/O log file
-
NMR Smooth Scaling now 'off' by default
Firebird 1.01 (maintenance release)
-
2/3/2010
-
bug fix:
-
major changes to SMP (to prevent occasional exception error/timeout)
-
changes to NMR Smooth Scaling
-
Null Move verification default = true
-
verification reduction default = 7
-
GetNumberOfConsoleInputEvents ->_kbhit
Firebird 1.0
-
2/3/2010
-
several minor bugs fixed:
-
no longer occasionally displays score of 0.01
-
no longer drops a thread after ~16 hours in analysis mode
-
engine now initializes at 128 Mb hash
-
movelists enlarged to accommodate really long games
-
pawn hash set to 32 Mb by default
-
improved time management
-
new UCI options:
-
Get FEN
-
Analysis (Fritz) Mode
-
Move on Ponderhit (Never, Sometimes, Always)
-
NMR Smooth Scaling (Null Move Reduction Smooth Scaling)
-
Pawn Value
-
Knight Value
-
Bishop Value
-
Rook Value
-
Queen Value
-
Bishop Pair Value
-
Null Move Verification
-
Verification Reduction
-
Move on Ponderhit
-
Extra Info
-
UCI options removed:
-
MultiCentiPawnPV
-
RandomCount
-
RandomBits
-
Enhanced Time Management
-
CPU Load implemented
-
ETM has been improved and is now used by default
-
new and improved SMP routines
-
MultiPV now works in 'game' mode as well as 'Analysis' mode
Firebird 1.0 beta
-
1/5/2010
-
bitboards
-
true SMP parallel search
-
configurable pawn hash
-
analysis mode
-
ponder
-
searchmoves
-
multiPV (in beta)
-
multiCentiPawnPV
-
Hyatt Hash
-
perft, benchmark, and drawboard utilites
-
(ex: type 'perft 6' or 'benchmark' at the console prompt)
-
validate functions (debug)
-
multi pos gain (for each CPU/core/thread)
-
multi history (for each CPU/core/thread)
-
most recent improvements:
-
native Windows SMP threads/multiprocessing
-
code cleanup and formatting
-
Max Threads UCI option
-
get_sys_info function:
-
queries Windows for # CPUs,
-
sets appropriate # threads
-
searchmoves
-
pondering improved
-
several bugfixes
-
SMP code vastly improved
-
auto CPU (Max Thread) detect/config
-
UCI Max Thread configuration option
-
improved prefetch routine
-
improved bitscan routines
-
mersenne twist random number generator
-
sparse one POPCNT