Subversion Repositories Games.Chess Giants

Rev

Rev 110 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 110 Rev 154
Line 26... Line 26...
26
evaluation..................... adjust evaluation terms.
26
evaluation..................... adjust evaluation terms.
27
exit........................... restores STDIN to keyboard.
27
exit........................... restores STDIN to keyboard.
28
force move..................... forces specific move.
28
force move..................... forces specific move.
29
hash n......................... sets transposition table size.
29
hash n......................... sets transposition table size.
30
                                 (n bytes, nK bytes or nM bytes).
30
                                 (n bytes, nK bytes or nM bytes).
31
hashe n........................ sets eval hash table size.
-
 
32
hashp n........................ sets pawn hash table size.
31
hashp n........................ sets pawn hash table size.
33
history........................ display game moves.
32
history........................ display game moves.
34
import filename................ imports learning data (.lrn files).
33
import filename................ imports learning data (.lrn files).
35
info........................... displays program settings.
34
info........................... displays program settings.
36
input filename................. sets STDIN to filename, reverts back on exit.
35
input filename................. sets STDIN to filename, reverts back on exit.
Line 39... Line 38...
39
                                 clear clears all learned information
38
                                 clear clears all learned information
40
level moves time inc........... sets ICS time controls.
39
level moves time inc........... sets ICS time controls.
41
linelength n................... sets line length to n.  A really large value
40
linelength n................... sets line length to n.  A really large value
42
                                will produce 1 line PVs, making parsing easier
41
                                will produce 1 line PVs, making parsing easier
43
list........................... update/display GM/IM/computer lists.
42
list........................... update/display GM/IM/computer lists.
-
 
43
lmp base scale................. LMP pruning move counts
44
lmr min max depths moves scale. LMR reduction matrix generator
44
lmr min max bias moves scale... LMR reduction matrix generator
45
load file title................ load a position from problem file, starting
45
load file title................ load a position from problem file, starting
46
                                with line containing title, ending on exit.
46
                                with line containing title, ending on exit.
47
log on|off..................... turn logging on/off.
47
log on|off..................... turn logging on/off.
48
mode normal|tournament......... toggles tournament mode.
48
mode normal|tournament......... toggles tournament mode.
49
move........................... initiates search (same as go).
49
move........................... initiates search (same as go).
Line 84... Line 84...
84
skill n........................ set skill level to n
84
skill n........................ set skill level to n
85
smp............................ sets SMP parameters (help smp for details)
85
smp............................ sets SMP parameters (help smp for details)
86
sn n........................... sets absolute search node limit.
86
sn n........................... sets absolute search node limit.
87
speech on|off.................. enables (disables) audio output.
87
speech on|off.................. enables (disables) audio output.
88
st n........................... sets absolute search time.
88
st n........................... sets absolute search time.
89
store val...................... stores position/score (position.bin).
-
 
90
swindle on|off................. enables/disables swindle mode.
89
swindle on|off................. enables/disables swindle mode.
91
tags........................... list PGN header tags.
90
tags........................... list PGN header tags.
92
test file [N].................. test a suite of problems.
91
test file [N].................. test a suite of problems.
93
time........................... time controls.
92
time........................... time controls.
94
timebook....................... out of book time adjustment
93
timebook....................... out of book time adjustment
Line 357... Line 356...
357
list is:
356
list is:
358
 
357
 
359
list SP +name [book=filename] [personality=filename]
358
list SP +name [book=filename] [personality=filename]
360
 
359
 
361
<end>
360
<end>
-
 
361
 
-
 
362
<lmp>
-
 
363
 
-
 
364
lmp base scale
-
 
365
 
-
 
366
This commands tunes the LMP move count thresholds.  The array it produces
-
 
367
is indexed by depth, and defines the number of moves at that remaining
-
 
368
depth that must be searched before late move pruning can kick in.
-
 
369
 
-
 
370
The basic formula looks like this:
-
 
371
 
-
 
372
moves = base + depth ^ scale
-
 
373
 
-
 
374
Bigger valuse for base and scale make LMP more conservative, smaller values
-
 
375
make it more aggressive and risky.
362
 
376
 
363
<lmr>
377
<lmr>
364
 
378
 
365
lmr min max dscale mscale scale
379
lmr min max dscale mscale scale
366
 
380
 
Line 608... Line 622...
608
<end>
622
<end>
609
 
623
 
610
<smp>
624
<smp>
611
smp commands are used to control the SMP search.  
625
smp commands are used to control the SMP search.  
612
 
626
 
613
smpaffinity <off|n> is used to enable or disable processor affinity.  "off"
627
smpaffinity <n> <p> is used to enable or disable processor affinity.  "-1"
614
disables affinity and lets threads run on any available core.  If you use an
628
disables affinity and lets threads run on any available core.  If you use an
615
integer <n> then thread zero will bind itself to cpu <n> and each additional
629
integer <n> then thread zero will bind itself to cpu <n> and each additional
616
thread will bind to the next higher cpu number.  This is useful if you try to
630
thread will bind to the next higher cpu number.  This is useful if you try to
617
run two copies of crafty on the same machine, now you can cause one to bind
631
run two copies of crafty on the same machine, now you can cause one to bind
618
to the first <n> cores, and the second to the last <n> cores.  For the first
632
to the first <n> cores, and the second to the last <n> cores.  For the first
619
instance of Crafty, you would use smpaffinity=0, and for the second
633
instance of Crafty, you would use smpaffinity=0, and for the second
620
smpaffinity=8, assuming you are running 8 threads per copy on a 16 cpu machine.
634
smpaffinity=8, assuming you are running 8 threads per copy on a 16 cpu machine.
621
If you get this wrong, you can have more than one thread on the same cpu which
635
If you get this wrong, you can have more than one thread on the same cpu which
622
will significantly impact performance.              
636
will significantly impact performance.              
-
 
637
 
-
 
638
The second parameter is used to help Crafty identify physical vs logical cores.
-
 
639
On a typical 20 core intel machine, processors 0 - 19 are on physical cores,
-
 
640
then 20-39 map back to those same physical cores, but different logical
-
 
641
(hyperthreaded) processors.  "1" is the correct value for this system.  For an
-
 
642
IBM Power 8 machine with dual 10-core chips, processors 0 through 7 are on
-
 
643
physical core 0, then 8 through 15 are on physical core 1, etc.  A value of "8"
-
 
644
will map threads to physical cores correctly as each thread is spaced on the
-
 
645
current processor core + 8, which is correct.
623
 
646
 
624
smpmt <n> sets the total number of allowable threads for the search.  The
647
smpmt <n> sets the total number of allowable threads for the search.  The
625
default is one (1) as Crafty does not assume it should use all available
648
default is one (1) as Crafty does not assume it should use all available
626
resources.  For optimal performance this should be set to the number of
649
resources.  For optimal performance this should be set to the number of
627
physical cores your machine has, which does NOT include hyperthreaded cores.
650
physical cores your machine has, which does NOT include hyperthreaded cores.