Ivy Bridge vs Sandy Bridge for computer chess

Discussion of chess software programming and technical issues.

Moderator: Ras

lkaufman
Posts: 6284
Joined: Sun Jan 10, 2010 6:15 am
Location: Maryland USA
Full name: Larry Kaufman

Re: Ivy Bridge vs Sandy Bridge for computer chess

Post by lkaufman »

Currently my main time control for that machine is 15" per game plus .15" increment. We use slower time controls on our distributed tester (currently 1' + 1").
lkaufman
Posts: 6284
Joined: Sun Jan 10, 2010 6:15 am
Location: Maryland USA
Full name: Larry Kaufman

Re: Ivy Bridge vs Sandy Bridge for computer chess

Post by lkaufman »

Note, it is 16 logical cores with 32 threads, so we run 32 instances, not 64.
diep
Posts: 1822
Joined: Thu Mar 09, 2006 11:54 pm
Location: The Netherlands

Re: Ivy Bridge vs Sandy Bridge for computer chess

Post by diep »

lkaufman wrote:Currently my main time control for that machine is 15" per game plus .15" increment. We use slower time controls on our distributed tester (currently 1' + 1").
Ah ok that will limit the problem of 64 processes at 32 cores.

Most benchmarks online are not so realistic. I saw Anandtech review for example and they manage to get 21% improvement or so of 16 logical cores over 32 logical cores, all tests averaged.

That's pretty bad.

We are doing much better there of course.

If you give me a message with your email adress i'll email you the latency test. takes 2 minutes to run.

then you have the latency numbers crucial to computerchess engines, as the test simulates a hashtables problem very effectively.
diep
Posts: 1822
Joined: Thu Mar 09, 2006 11:54 pm
Location: The Netherlands

Re: Ivy Bridge vs Sandy Bridge for computer chess

Post by diep »

lkaufman wrote:Note, it is 16 logical cores with 32 threads, so we run 32 instances, not 64.
32 instances means you run 32 matches at the same time?

1 match has 2 engines. Komodo and an opponent.
So 32 instances means 64 chessprograms running at the same time,
from which 32 are idle (not pondering) and 32 are searching.

Correct?
diep
Posts: 1822
Joined: Thu Mar 09, 2006 11:54 pm
Location: The Netherlands

Re: Ivy Bridge vs Sandy Bridge for computer chess

Post by diep »

lkaufman wrote:Currently my main time control for that machine is 15" per game plus .15" increment. We use slower time controls on our distributed tester (currently 1' + 1").
15 minutes a game + 15 seconds increment?
lkaufman
Posts: 6284
Joined: Sun Jan 10, 2010 6:15 am
Location: Maryland USA
Full name: Larry Kaufman

Re: Ivy Bridge vs Sandy Bridge for computer chess

Post by lkaufman »

diep wrote:
lkaufman wrote:Note, it is 16 logical cores with 32 threads, so we run 32 instances, not 64.
32 instances means you run 32 matches at the same time?

1 match has 2 engines. Komodo and an opponent.
So 32 instances means 64 chessprograms running at the same time,
from which 32 are idle (not pondering) and 32 are searching.

Correct?
correct
lkaufman
Posts: 6284
Joined: Sun Jan 10, 2010 6:15 am
Location: Maryland USA
Full name: Larry Kaufman

Re: Ivy Bridge vs Sandy Bridge for computer chess

Post by lkaufman »

diep wrote:
lkaufman wrote:Currently my main time control for that machine is 15" per game plus .15" increment. We use slower time controls on our distributed tester (currently 1' + 1").
15 minutes a game + 15 seconds increment?
No, 15 seconds a game + 0.15 seconds! We like samples of 20,000 games or more overnight! I know you are sceptical of the value of such fast tests, but they obviously have worked for us.
bob
Posts: 20943
Joined: Mon Feb 27, 2006 7:30 pm
Location: Birmingham, AL

Re: Ivy Bridge vs Sandy Bridge for computer chess

Post by bob »

lkaufman wrote:
diep wrote:
lkaufman wrote:
syzygy wrote:
lkaufman wrote:When we did this, the ratios were pretty constant. In fact Komodo actually ran slightly BETTER on the 12 core relative to the other engines when tested this way. What does that suggest?
It might be that Komodo is more memory-bandwidth hungry, as Rein speculates. Turboboost kicking or not kicking in can also make a difference.
It sounds like the memory-bandwith issue is the key one, as neither the old I7 nor the 12 core cad Turboboost, so this can't explain the different performance on those two machines.
Is there any reason to think that Turboboost would not be fully effective for all chess engines? As far as we can tell, when Komodo is running the turboboost is in full force on the new machine.
In general 2 socket machines will NEVER turboboost if you use from each physical cpu more than 2 cores.
I checked this out with a special program installed for me by the manufacturer to check the speed; when Komodo is being tested the speed goes up from the nominal 2.6 to 3.0, which is the max turbo speed when all cores are in use. If only 2 cores per processor are in use it would be 3.3 GHz.
Doesn't mean that is right. I had a very early Nehalem processor that overclocked (turboboost) backward. If one core was busy, it ran at normal speed. If all 8 were busy, it overclocked to the max. Not what they intended. But this is done inside the BIOS and Dell had a bad one. Spent a couple of days with Intel here on site and over the phone before we resolved this.

It should NEVER overclock if all cores are running. If it could do that, the base speed of the CPU should just be increased to that level. The purpose of turboboost is to overclock individual cores when other cores are idle, so that there is time to remove the extra heat that over-clocked core produces. If all use boost, the heat accumulates faster than it can be removed and would lead to chip failure.

I have not looked at all, but the general "increment" for turbo-boost has been 133 mhz on the ones I have actually tested, although at least Sandy Bridge supposedly goes in increments of 100. But I don't play with this much as I always keep it disabled. It can be confusing when trying to measure multiple-CPU speedup if the one-cpu speed is faster than normal due to turbo-boost, but the 8-12-16 cpu speed is lower because boost is off.
syzygy
Posts: 5909
Joined: Tue Feb 28, 2012 11:56 pm

Re: Ivy Bridge vs Sandy Bridge for computer chess

Post by syzygy »

bob wrote:It should NEVER overclock if all cores are running.
At least with current processors, turboboost is also supposed to work when all cores are busy. Check.
If it could do that, the base speed of the CPU should just be increased to that level.
Not necessarily. The idea of turboboost is that after a period of idle time, the cpu can for a short while run faster than its base clock rate ("boost").

As it happens, this "short while" often is not short at all, and depending on the BIOS the cpu can be set to effectively run in turboboost mode all the time. Of course the cpu should be properly cooled for this to work. If a cpu gets too hot, it will throttle down.

The unlocked i7s are overclocked by increasing in the BIOS the multiplier used for turboboost (and by increasing the max wattage the CPU may use). Base speed stays the same, but is indeed essentially irrelevant if turboboost is on all the time.
bob
Posts: 20943
Joined: Mon Feb 27, 2006 7:30 pm
Location: Birmingham, AL

Re: Ivy Bridge vs Sandy Bridge for computer chess

Post by bob »

syzygy wrote:
bob wrote:It should NEVER overclock if all cores are running.
At least with current processors, turboboost is also supposed to work when all cores are busy. Check.
If it could do that, the base speed of the CPU should just be increased to that level.
Not necessarily. The idea of turboboost is that after a period of idle time, the cpu can for a short while run faster than its base clock rate ("boost").

As it happens, this "short while" often is not short at all, and depending on the BIOS the cpu can be set to effectively run in turboboost mode all the time. Of course the cpu should be properly cooled for this to work. If a cpu gets too hot, it will throttle down.

The unlocked i7s are overclocked by increasing in the BIOS the multiplier used for turboboost (and by increasing the max wattage the CPU may use). Base speed stays the same, but is indeed essentially irrelevant if turboboost is on all the time.
Short bursts are generally "not interesting". I've tested on most, and they seem to run at their nominal clock speed after a few seconds of full-bore chess. Except for the Dell case where they screwed up the BIOS. I won't claim to have run on all processors however, but I have run on a bunch, at least through the most recent 6 cores which happen to be in our new cluster...

I presume you could tweak most anything if you use exotic cooling and such. I'm obviously always talking about "stock boxes" as I don't have any interests in overclocking or over-stressing a CPU beyond what Intel (or AMD) recommends.