16 Core (E5-2687W) Matches and Tournaments

Discussion of computer chess matches and engine tournaments.

Moderators: hgm, Rebel, chrisw

ouachita
Posts: 454
Joined: Tue Jan 15, 2013 4:33 pm
Location: Ritz-Carlton, NYC
Full name: Bobby Johnson

Re: 16 Core (E5-2687W) Matches and Tournaments

Post by ouachita »

kgburcham wrote:Also Bobby, I wonder if your Fritz bench can use all of your cores, some of the Fritz bench tests were limited in core usage.thanks
kgburcham
It runs a bit better on 15.
SIM, PhD, MBA, PE
ouachita
Posts: 454
Joined: Tue Jan 15, 2013 4:33 pm
Location: Ritz-Carlton, NYC
Full name: Bobby Johnson

Re: 16 Core (E5-2687W) Matches and Tournaments

Post by ouachita »

kgburcham wrote:I just ran the Autotune for Houdini 4 and my best min split depth is 12 same as with Houdini 3.
H4 SD default is 10; mine runs about 8% faster at 14. SF doesn't have "autotune", but does it have something similar?
SIM, PhD, MBA, PE
ouachita
Posts: 454
Joined: Tue Jan 15, 2013 4:33 pm
Location: Ritz-Carlton, NYC
Full name: Bobby Johnson

Re: 16 Core (E5-2687W) Matches and Tournaments

Post by ouachita »

Hugo wrote:If you are using the default, then I believe you're using Min Split Depth=7 (which might be sub-optimal for 16 threads).
Hugo wrote: In my tournaments I leave it to zero, so I think the engine will choose SD7 as default value. Clemens
Where did you find SD 7 as the default?
SIM, PhD, MBA, PE
zullil
Posts: 6442
Joined: Tue Jan 09, 2007 12:31 am
Location: PA USA
Full name: Louis Zulli

Re: 16 Core (E5-2687W) Matches and Tournaments

Post by zullil »

ouachita wrote:
Hugo wrote:If you are using the default, then I believe you're using Min Split Depth=7 (which might be sub-optimal for 16 threads).
Hugo wrote: In my tournaments I leave it to zero, so I think the engine will choose SD7 as default value. Clemens
Where did you find SD 7 as the default?
thread.cpp --- lines 207-226:

Code: Select all

// read_uci_options() updates internal threads parameters from the corresponding
// UCI options and creates/destroys threads to match the requested number. Thread
// objects are dynamically allocated to avoid creating all possible threads
// in advance (which include pawns and material tables), even if only a few
// are to be used.

void ThreadPool::read_uci_options() {

  maxThreadsPerSplitPoint = Options["Max Threads per Split Point"];
  minimumSplitDepth       = Options["Min Split Depth"] * ONE_PLY;
  size_t requested        = Options["Threads"];

  assert(requested > 0);

  // Value 0 has a special meaning: We determine the optimal minimum split depth
  // automatically. Anyhow the minimumSplitDepth should never be under 4 plies.
  if (!minimumSplitDepth)
      minimumSplitDepth = &#40;requested < 8 ? 4 &#58; 7&#41; * ONE_PLY;
  else
      minimumSplitDepth = std&#58;&#58;max&#40;4 * ONE_PLY, minimumSplitDepth&#41;;
ouachita
Posts: 454
Joined: Tue Jan 15, 2013 4:33 pm
Location: Ritz-Carlton, NYC
Full name: Bobby Johnson

Re: 16 Core (E5-2687W) Matches and Tournaments

Post by ouachita »

zullil wrote:thread.cpp --- lines 207-226:
It varies by engine, but if we're just looking for speed or kN/s, SD 10-12 is best on my machine.
SIM, PhD, MBA, PE
zullil
Posts: 6442
Joined: Tue Jan 09, 2007 12:31 am
Location: PA USA
Full name: Louis Zulli

Re: 16 Core (E5-2687W) Matches and Tournaments

Post by zullil »

ouachita wrote:
zullil wrote:thread.cpp --- lines 207-226:
It varies by engine, but if we're just looking for speed or kN/s, SD 10-12 is best on my machine.
I assumed you were asking about Stockfish, so I posted the relevant source code for Stockfish. If you leave the setting for Min Split Depth as 0, SF will set it to 7 if the setting for Threads is 8 or more.

Based on your experimenting, it looks like that's suboptimal for 16 threads.
ouachita
Posts: 454
Joined: Tue Jan 15, 2013 4:33 pm
Location: Ritz-Carlton, NYC
Full name: Bobby Johnson

Re: 16 Core (E5-2687W) Matches and Tournaments

Post by ouachita »

zullil wrote:I assumed you were asking about Stockfish, . . . it looks like that's suboptimal for 16 threads.
I meant to say, it varies by SF version, and, yes, the fastest SD for mine is 10-12, depending. Thanks for pointing out that default 7.
SIM, PhD, MBA, PE
ouachita
Posts: 454
Joined: Tue Jan 15, 2013 4:33 pm
Location: Ritz-Carlton, NYC
Full name: Bobby Johnson

Re: 16 Core Matches and Tournaments

Post by ouachita »

SF010214-16 v. H4B-16, Blitz 1m+1s 0

Code: Select all

                                      
1   Houdini 4 Pro x64B           +28  +29/=50/-21 54.00%   54.0/100
2   Stockfish 020114 64 SSE4.2   -28  +21/=50/-29 46.00%   46.0/100

SF010214-32T v. H4B-16C, 1+1  0
                                      
1   Houdini 4 Pro x64B            +7  +21/=60/-19 51.00%   51.0/100
2   Stockfish 020114 64 SSE4.2    -7  +19/=60/-21 49.00%   49.0/100

The single difference between these two test bases, aside from kPa and RH, was changing SF to 32 threads.

It is what it is.
SIM, PhD, MBA, PE
ouachita
Posts: 454
Joined: Tue Jan 15, 2013 4:33 pm
Location: Ritz-Carlton, NYC
Full name: Bobby Johnson

Re: Physical cores v. Physical Cores

Post by ouachita »

Code: Select all

Physical cores v. Physical Cores

SF010214-16 v. H4B-1, Blitz 1m+1s  0
                                      
1   Stockfish 020114 64 SSE4.2  +174  +41/=35/-4 73.13%   58.5/80
2   Houdini 4 Pro x64B          -174  +4/=35/-41 26.88%   21.5/80

SF010214-1 v. H4B-16, Blitz 1m+1s  0

                                      
1   Houdini 4 Pro x64B          +205  +47/=30/-4 76.54%   62.0/81
2   Stockfish 020114 64 SSE4.2  -205  +4/=30/-47 23.46%   19.0/81

Run XXXX games with these bases, the answer should be basically the same. I do not have the data to plot the relationship between decreasing core deltas &#40;1-16=15, 2-16=14, etc.) and decreasing ELO deltas, but the direction of the trend lines are obvious.

8C v. 16C is running now.

SIM, PhD, MBA, PE
Vinvin
Posts: 5228
Joined: Thu Mar 09, 2006 9:40 am
Full name: Vincent Lejeune

Re: Physical cores v. Physical Cores

Post by Vinvin »

ouachita wrote:Run XXXX games with these bases, the answer should be basically the same. I do not have the data to plot the relationship between decreasing core deltas (1-16=15, 2-16=14, etc.) and decreasing ELO deltas, but the direction of the trend lines are obvious.
Some old rules :
1) Multiply speed by 2 : +60-70 elo.
2) 1 core to 2 cores (that's not the same as multiply speed by 2 because the search have to be split somewhere) : +50-60 elo
3) 2 cores to 4 cores : a bit less than previous -> +45-50?
4) 4 cores to 8 cores : a bit less than previous ... ?
5) 8 cores to 16 cores : a bit less than previous ... ?
ouachita wrote:8C v. 16C is running now.
That will be interesting to know !
Thanks !