By Lothar Jung
Date 2018-12-09 15:28
Edited 2018-12-09 15:32
—threads=4
-t=4
Usage: lc0 [<mode>] [flags...]
Available modes. A help for a mode: lc0 <mode> --help
uci (default) Act as UCI engine
selfplay Play games with itself
benchmark Quick benchmark
Allowed command line flags for current mode:
-h, --help Show help and exit.
-w, --weights=STRING
Path from which to load network weights.
Setting it to <autodiscover> makes it search in ./ and ./weights/subdirectories
for the latest (by file date) file which looks like weights.
[UCI: WeightsFile DEFAULT: <autodiscover>]
-b, --backend=CHOICE
Neural network computational backend to use.
[UCI: Backend DEFAULT: blas VALUES: blas,check,random,multiplexing]
-o, --backend-opts=STRING
Parameters of neural network backend. Exact parameters differ per backend.
[UCI: BackendOptions]
--minibatch-size=1..1024
How many positions the engine tries to batch together for parallel NN
computation. Larger batches may reduce strength a bit, especially with a small
number of playouts.
[UCI: MinibatchSize DEFAULT: 256 MIN: 1 MAX: 1024]
--max-prefetch=0..1024
When the engine cannot gather a large enough batch for immediate use, try to
prefetch up to X positions which are likely to be useful soon, and put them into
cache.
[UCI: MaxPrefetch DEFAULT: 32 MIN: 0 MAX: 1024]
--cpuct=0.00..100.00
Cpuct constant from "UCT search" algorithm. Higher values promote more
exploration/wider search, lower values promote more confidence/deeper search.
[UCI: CPuct DEFAULT: 3.40 MIN: 0.00 MAX: 100.00]
--temperature=0.00..100.00
Tau value from softmax formula for the first move. If equal to 0, the engine
picks the best move to make. Larger values increase randomness while making the
move.
[UCI: Temperature DEFAULT: 0.00 MIN: 0.00 MAX: 100.00]
--tempdecay-moves=0..100
Reduce temperature for every move from the game start to this number of moves,
decreasing linearly from initial temperature to 0. A value of 0 disables
tempdecay.
[UCI: TempDecayMoves DEFAULT: 0 MIN: 0 MAX: 100]
--temp-visit-offset=-1.00..1000.00
Reduces visits by this value when picking a move with a temperature. When the
offset is less than number of visits for a particular move, that move is not
picked at all.
[UCI: TempVisitOffset DEFAULT: 0.00 MIN: -1.00 MAX: 1000.00]
-n, --[no-]noise
Add Dirichlet noise to root node prior probabilities. This allows the engine to
discover new ideas during training by exploring moves which are known to be bad.
Not normally used during play.
[UCI: DirichletNoise DEFAULT: false]
--[no-]verbose-move-stats
Display Q, V, N, U and P values of every move candidate after each move.
[UCI: VerboseMoveStats DEFAULT: false]
--smart-pruning-factor=0.00..10.00
Do not spend time on the moves which cannot become bestmove given the remaining
time to search. When no other move can overtake the current best, the search
stops, saving the time. Values greater than 1 stop less promising moves from
being considered even earlier. Values less than 1 causes hopeless moves to still
have some attention. When set to 0, smart pruning is deactivated.
[UCI: SmartPruningFactor DEFAULT: 1.33 MIN: 0.00 MAX: 10.00]
--fpu-reduction=-100.00..100.00
"First Play Urgency" reduction. Normally when a move has no visits, it's eval is
assumed to be equal to parent's eval. With non-zero FPU reduction, eval of
unvisited move is decreased by that value, discouraging visits of unvisited
moves, and saving those visits for (hopefully) more promising moves.
[UCI: FpuReduction DEFAULT: 1.20 MIN: -100.00 MAX: 100.00]
--cache-history-length=0..7
Length of history, in half-moves, to include into the cache key. When this value
is less than history that NN uses to eval a position, it's possble that the
search will use eval of the same position with different history taken from
cache.
[UCI: CacheHistoryLength DEFAULT: 0 MIN: 0 MAX: 7]
--policy-softmax-temp=0.10..10.00
Policy softmax temperature. Higher values make priors of move candidates closer
to each other, widening the search.
[UCI: PolicyTemperature DEFAULT: 2.20 MIN: 0.10 MAX: 10.00]
--max-collision-events=1..1024
Allowed node collision events, per batch.
[UCI: MaxCollisionEvents DEFAULT: 32 MIN: 1 MAX: 1024]
--max-collision-visits=1..1000000
Total allowed node collision visits, per batch.
[UCI: MaxCollisionVisits DEFAULT: 9999 MIN: 1 MAX: 1000000]
--[no-]out-of-order-eval
During the gathering of a batch for NN to eval, if position happens to be in the
cache or is terminal, evaluate it right away without sending the batch to the
NN. When off, this may only happen with the very first node of a batch; when on,
this can happen with any node.
[UCI: OutOfOrderEval DEFAULT: true]
--multipv=1..500
Number of game play lines (principal variations) to show in UCI info output.
[UCI: MultiPV DEFAULT: 1 MIN: 1 MAX: 500]
--score-type=CHOICE
What to display as score. Either centipawns (the UCI default), win percentage or
Q (the actual internal score) multiplied by 100.
[UCI: ScoreType DEFAULT: centipawn VALUES: centipawn,win_percentage,Q]
--history-fill=CHOICE
Neural network uses 7 previous board positions in addition to the current one.
During the first moves of the game such historical positions don't exist, but
they can be synthesized. This parameter defines when to synthesize them (always,
never, or only at non-standard fen position).
[UCI: HistoryFill DEFAULT: fen_only VALUES: no,fen_only,always]
--nodes=-1..999999999
Number of nodes to run as a benchmark.
[DEFAULT: 30000 MIN: -1 MAX: 999999999]
--movetime=-1..999999999
Benchmark time allocation, in milliseconds.
[DEFAULT: -1 MIN: -1 MAX: 999999999]
--fen=STRING
Benchmark initial position FEN.
[DEFAULT: rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w KQkq - 0 1]
--nncache=0..999999999
Number of positions to store in a memory cache. A large cache can speed up
searching, but takes memory.
[UCI: NNCacheSize DEFAULT: 200000 MIN: 0 MAX: 999999999]
-t, --threads=1..128
Number of (CPU) worker threads to use.
[UCI: Threads DEFAULT: 2 MIN: 1 MAX: 128]