TNGCC - need to decide ponder ON or OFF (new poll)

Discussion of anything and everything relating to chess playing software and machines.

Moderator: Ras

Which option would you prefer TNGCC to use?

1 thread, ponder ON, ht OFF
3
8%
3 threads, ponder ON, ht ON
3
8%
3 threads, ponder OFF, ht OFF
16
43%
7 threads, ponder OFF, ht ON
15
41%
 
Total votes: 37

Vinvin
Posts: 5308
Joined: Thu Mar 09, 2006 9:40 am
Full name: Vincent Lejeune

Re: TNGCC - need to decide ponder ON or OFF (new poll).

Post by Vinvin »

Martin Thoresen wrote:
Vinvin wrote: Some math give : "HT on" give +50% raw computation power. But here, it's divide by 2 because other half is use by another engine so, 150%/2 = 75% speed : 38 sec/0.75 = 50 sec ; about the 45 sec, I suppose the statistical error is the explanation between 50 and 45.
The test states that there is no other engine running, that's the point.
Oops, you're right, I mismatch with #3 :?

In your comparison, the difference is explained by OS threads management (I suppose OS constantly move threads over "optimal" logical cores, because threads are not fixed on 1 physical core). 38/45= 84% of the speed. 16% lost but you have +50% free power to use with light software : surf, text edit,...

Up to you to chose your optimal config.
User avatar
hgm
Posts: 28425
Joined: Fri Mar 10, 2006 10:06 am
Location: Amsterdam
Full name: H G Muller

Re: TNGCC - need to decide ponder ON or OFF (new poll).

Post by hgm »

Vinvin wrote:(I suppose OS constantly move threads over "optimal" logical cores). 38/45= 84% of the speed.
Well, the 84% suggests it did not always do that; it seems a bit on the low side. OTOH, it can also be that the code is particularly inefficient, and needs a large re-order buffer to clean that up. Problem is that you can never be certain when you leave it to the OS.
Modern Times
Posts: 3780
Joined: Thu Jun 07, 2012 11:02 pm

Re: TNGCC - need to decide ponder ON or OFF (new poll)

Post by Modern Times »

hgm wrote:
Modern Times wrote:Yes HT is much improved. It might improve performance a little, but nowhere near as much as extra true cores. As long as Martin uses ponder OFF it would be OK for his purposes, except that different engines may react differently to HT.
Of course they nowhere near powerful as extra cores. But that is not a meaningful comparison, because they also don't consume as many resources as extra cores. An extra core doubles the number of transistors on the chip, doubles the power consumption. Hyper-threading adds perhaps only 1% extra transistors, and makes the original 100% be used 1.5 times as efficient (which also drives up power consumption, btw). So you get 0.5 extra core for 1/100 of the price.

Who cares if different engines react different to hyper-threading? It might be true that ratings determined with HT off/unused cannot be easily converted into ratings with HT on and using it. But who wants to do that? The CCRL test conditions are very well specified (which is a good thing), but arbitratrily chosen. A rating list based on hyper threads is not intrinsically inferior to one based on physical cores. On the contrary, if in the future it turns out that HT buys users 'extra bang for their buck', the normal situation will be that they run using HT, and if the physical-cores-only CCRL list will become known as 'less reliable because it does not use HT'...
Well, the question was nothing to do with CCRL testing

Most users when analysing positons for correspondence chess or whatever, would use their HT "cores" because they would probably see some small benefit.

I would dispute an HT core being an extra 50% of a real core, but it doesn't matter. For different programs it would be different. Anyway whatever Martin does is fine on reflection. His choice.
Lavir
Posts: 263
Joined: Sun Oct 28, 2012 11:45 am

Re: TNGCC - need to decide ponder ON or OFF (new poll).

Post by Lavir »

Martin Thoresen wrote: The test states that there is no other engine running, that's the point.
Martin, if you have fear that the OS will mismanage threads/cores, simply use affinities (I've given above an example for 4 cores/8 threads, as in your case) and you are set (you just need to do it once, after it is all automatic); it will be even a little tiny beneficial because the logical cores will handle the GUI etc.

Supposing you will not use the PC for some heavy task apart running the tournament, this will surely be the best solution possible. Naturally the "best of the best" would be to have 2 separate PCs with full SMP and ponder and no possibility of sharing between the programs, but since nobody here I suppose is a millionaire, you have to do with what you have, and IMO (and also as Robert stated) 4 cores with HT Ponder OFF is the best of both worlds.

EDIT: Another thing. If you use Large Pages be sure to run the command prompt (with the command for the affinities) as an administrator, elsewhere the engines will not be able to use Large Pages. This or just set manually affinities for the GUI with task manager.
Last edited by Lavir on Thu Jan 03, 2013 2:44 pm, edited 2 times in total.
User avatar
hgm
Posts: 28425
Joined: Fri Mar 10, 2006 10:06 am
Location: Amsterdam
Full name: H G Muller

Re: TNGCC - need to decide ponder ON or OFF (new poll)

Post by hgm »

Modern Times wrote:For different programs it would be different.
That is for sure. On the P-IV I even managed to make some test programs that would get 100% extra from the HT: they did not slow each other down at all. Needless to say, these test programs were not using the CPU resources very efficiently when running on a dedicated core. For a program that already exercises a single core to its limits, there is nothing to gain, and each HT would slow down by exactly a factor 2 when you ran two of them on the same physical core.
Vinvin
Posts: 5308
Joined: Thu Mar 09, 2006 9:40 am
Full name: Vincent Lejeune

Re: TNGCC - need to decide ponder ON or OFF (new poll).

Post by Vinvin »

Vinvin wrote:
Martin Thoresen wrote:
Vinvin wrote: Some math give : "HT on" give +50% raw computation power. But here, it's divide by 2 because other half is use by another engine so, 150%/2 = 75% speed : 38 sec/0.75 = 50 sec ; about the 45 sec, I suppose the statistical error is the explanation between 50 and 45.
The test states that there is no other engine running, that's the point.
Oops, you're right, I mismatch with #3 :?

In your comparison, the difference is explained by OS threads management (I suppose OS constantly move threads over "optimal" logical cores, because threads are not fixed on 1 physical core). 38/45= 84% of the speed. 16% lost but you have +50% free power to use with light software : surf, text edit,...

Up to you to chose your optimal config.
One more thing Sedat didn't test : set the affinity of the engine on different real cores, that means : force the engine to use only odd (or even) "logical core" number. As this, the OS changes the core rarely (may be never, I'm not enough technically skilled to know).
Make the test yourself, it takes only some minutes.
See here : http://open-chess.org/viewtopic.php?f=3&t=1970
Lavir
Posts: 263
Joined: Sun Oct 28, 2012 11:45 am

Re: TNGCC - need to decide ponder ON or OFF (new poll).

Post by Lavir »

Vinvin wrote: As this, the OS changes the core rarely (may be never, I'm not enough technically skilled to know ) . Make the test yourself, it takes only some minutes.
Using affinities setting the GUI/engines to use only physical cores, the OS cannot change them to a logical core. It is forced to use physical cores only.

The only thing it can happen is that if you use an intensive application that requires a lot of CPU resources the OS will try to use a physical core and so cycles will be divided by the two processes sharing that core (same as it can happen if you use 4 cores without HT and you use a program that use CPU resources).

However if the PC use is not heavy, the logical cores will handle the work without problems.

As for the test Sedat probably didn't know about using affinities, but in reality that's the only way to test the thing efficiently being 100% sure that the result is appropriate (and in fact that's the way I and Kai tested HT some time ago) and if you do so the results are quite different, in fact.
Vinvin
Posts: 5308
Joined: Thu Mar 09, 2006 9:40 am
Full name: Vincent Lejeune

Re: TNGCC - need to decide ponder ON or OFF (new poll).

Post by Vinvin »

Lavir wrote:
Vinvin wrote: As this, the OS changes the core rarely (may be never, I'm not enough technically skilled to know ) . Make the test yourself, it takes only some minutes.
Using affinities setting the GUI/engines to use only physical cores, the OS cannot change them to a logical core. It is forced to use physical cores only.

The only thing it can happen is that if you use an intensive application that requires a lot of CPU resources the OS will try to use a physical core and so cycles will be divided by the two processes sharing that core (same as it can happen if you use 4 cores without HT and you use a program that use CPU resources).

However if the PC use is not heavy, the logical cores will handle the work without problems.

As for the test Sedat probably didn't know about using affinities, but in reality that's the only way to test the thing efficiently being 100% sure that the result is appropriate (and in fact that's the way I and Kai tested HT some time ago) and if you do so the results are quite different, in fact.
In fact, I supposed switching could exist (example : thread on core#2 and core#0 switched) for whatever reason (ex.: OS starts to execute 2 system services on the processor).
User avatar
Laskos
Posts: 10948
Joined: Wed Jul 26, 2006 10:21 pm
Full name: Kai Laskos

Re: TNGCC - need to decide ponder ON or OFF (new poll).

Post by Laskos »

Martin Thoresen wrote:
Vinvin wrote:Why not : "3 threads, ponder OFF, ht ON" or "4 threads, ponder OFF, ht ON" ?
I'd vote for one of these ...
Actually, I am leaning to the latter as per Robert Houdart's post in the other thread.

I am just going to do some testing.
This proposal "4 threads ponder OFF, HT ON" seems the best. Here is another quick example wit my i7:
HT ON, no affinities set, Houdini 3 with

4 threads 7173 knps
3 threads 5890 knps (-18%)

8 threads 9452 (+32%)

With 1 thread Houdini 3 in background:

4(1) threads 6736 (-6%)
3(1) threads 5376 (-25%)

Therefore, with HT ON, even using fully 1 thread for other purposes, 4-threaded Houdini loses only 6%, compared to clean 4-threaded Houdini. You can use pretty much at will 1 thread (for Photoshop whatever) while 4 other threads of Houdini are running, decreasing Houdini's speed only by a little. Then, 4-threaded Houdini 3 is almost as good as 8-threaded.

Kai
S.Taylor
Posts: 8514
Joined: Thu Mar 09, 2006 3:25 am
Location: Jerusalem Israel

Re: TNGCC - need to decide ponder ON or OFF (new poll)

Post by S.Taylor »

S.Taylor wrote:What does TNGCC stand for?
The next generation computer contest? (TNGCC)
Or Thoresons new gift (to) chess community? (TNGCC)
Or what?
This now gets clearly curious! (TNGCC)
So what IS it already?