the difference compiling engines using different progs?

Discussion of chess software programming and technical issues.

Moderators: hgm, Rebel, chrisw

PawnStormZ
Posts: 880
Joined: Mon Feb 15, 2010 6:43 am

the difference compiling engines using different progs?

Post by PawnStormZ »

If I see an engine compiled using "intel bla bla" or "microsoft bla bla" etc. does it make a difference to me if I am using windows 7 64?

I assume that there are differences or the same site would not post both versions. They both said that "popcnt" is supported which I think is good if the cpu is an I7, which I have.

Is it just some minor technical differences, or would I notice any real-world advantages in using one over the other?

Thanks
Allard Siemelink
Posts: 297
Joined: Fri Jun 30, 2006 9:30 pm
Location: Netherlands

Re: the difference compiling engines using different progs?

Post by Allard Siemelink »

Presumably, the only difference should be a speed difference.
You could opt for the fastest version; each 1% more speed
should give ~1 elo more strength.
PawnStormZ
Posts: 880
Joined: Mon Feb 15, 2010 6:43 am

Re: the difference compiling engines using different progs?

Post by PawnStormZ »

Well, that was my question: is there a difference; in speed or anything else just based on which compiler was used, and is that difference dependent on the pc that you are using to run the engine.

If there are differences, what are they, and which are best on which cpu.
LiquidNitrogenOverclocker

Re: the difference compiling engines using different progs?

Post by LiquidNitrogenOverclocker »

PawnStormZ wrote:If I see an engine compiled using "intel bla bla" or "microsoft bla bla" etc. does it make a difference to me if I am using windows 7 64?

I assume that there are differences or the same site would not post both versions. They both said that "popcnt" is supported which I think is good if the cpu is an I7, which I have.

Is it just some minor technical differences, or would I notice any real-world advantages in using one over the other?

Thanks
In my own experience, the Intel compilers seem to nudge out the Microsoft compilers when it comes to producing code that executes faster. Same code compiled on Intel is anywhere from 5% to 10% faster (in terms of move generation) but, move generation is not a big part of the overhead. Most of the time is spent in the alpha-beta routine.

You have to profile your code and identify where the true bottlenecks are. Select the compiler that minimizes your bottlenecks.
User avatar
Kempelen
Posts: 620
Joined: Fri Feb 08, 2008 10:44 am
Location: Madrid - Spain

Re: the difference compiling engines using different progs?

Post by Kempelen »

LiquidNitrogenOverclocker wrote: In my own experience, the Intel compilers seem to nudge out the Microsoft compilers when it comes to producing code that executes faster. Same code compiled on Intel is anywhere from 5% to 10% faster (in terms of move generation) but, move generation is not a big part of the overhead. Most of the time is spent in the alpha-beta routine.

You have to profile your code and identify where the true bottlenecks are. Select the compiler that minimizes your bottlenecks.
And what is your opinion/experience comparing intel and ms with mingw?
Fermin Serrano
Author of 'Rodin' engine
http://sites.google.com/site/clonfsp/
LiquidNitrogenOverclocker

Re: the difference compiling engines using different progs?

Post by LiquidNitrogenOverclocker »

Kempelen wrote:
And what is your opinion/experience comparing intel and ms with mingw?
I don't have MingW installed on any of my boxes where I design software, so I have no comparison for you.
PawnStormZ
Posts: 880
Joined: Mon Feb 15, 2010 6:43 am

the difference compiling engines using different progs?

Post by PawnStormZ »

LiquidNitrogenOverclocker wrote:
PawnStormZ wrote:If I see an engine compiled using "intel bla bla" or "microsoft bla bla" etc. does it make a difference to me if I am using windows 7 64?

I assume that there are differences or the same site would not post both versions. They both said that "popcnt" is supported which I think is good if the cpu is an I7, which I have.

Is it just some minor technical differences, or would I notice any real-world advantages in using one over the other?

Thanks
In my own experience, the Intel compilers seem to nudge out the Microsoft compilers when it comes to producing code that executes faster. Same code compiled on Intel is anywhere from 5% to 10% faster (in terms of move generation) but, move generation is not a big part of the overhead. Most of the time is spent in the alpha-beta routine.

You have to profile your code and identify where the true bottlenecks are. Select the compiler that minimizes your bottlenecks.

Thanks for the input Ed.

I was speaking more as an engine user, rather that someone who has code to compile. So I will try using the Intel compile, and maybe DL some others and do some timings like depth-to-move or nps using several positions.
Allard Siemelink
Posts: 297
Joined: Fri Jun 30, 2006 9:30 pm
Location: Netherlands

Re: the difference compiling engines using different progs?

Post by Allard Siemelink »

PawnStormZ wrote:Well, that was my question: is there a difference; in speed or anything else just based on which compiler was used, and is that difference dependent on the pc that you are using to run the engine.

If there are differences, what are they, and which are best on which cpu.
Like I said: only speed.
Just look in your gui which one is the fastest on your system and use it.
PawnStormZ
Posts: 880
Joined: Mon Feb 15, 2010 6:43 am

Re: the difference compiling engines using different progs?

Post by PawnStormZ »

Allard Siemelink wrote:
PawnStormZ wrote:Well, that was my question: is there a difference; in speed or anything else just based on which compiler was used, and is that difference dependent on the pc that you are using to run the engine.

If there are differences, what are they, and which are best on which cpu.
Like I said: only speed.
Just look in your gui which one is the fastest on your system and use it.
Thanks. I understood what you said. I know that there are many people here with a lot of technical knowledge, and I guess that I was hoping for something like: "this compiler is best with the I7, this is best for AMD, this one on a MAC chip, etc." (If those type of statements can even be made, maybe it is not that simple.).

If testing has already been done, I would accept that information rather than re-running the tests myself! If not, then maybe I will test some and report back with the results.
ernest
Posts: 2041
Joined: Wed Mar 08, 2006 8:30 pm

Re: the difference compiling engines using different progs?

Post by ernest »

Allard Siemelink wrote:Like I said: only speed.
Well, sometimes compiler options are not exactly the same, and you find that the PVs in infinite analysis are not the same.

Just saw that on 2 compiles of Firebird, one with Intel compiler, the other with Microsoft compiler.
But then, it's not the same guy who did the 2 compiles... :)