Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Fastest freeware C++ compiler?

Author: Russell Reagan

Date: 02:38:25 12/14/03

Go up one level in this thread


On December 14, 2003 at 05:07:10, Gian-Carlo Pascutto wrote:

>On December 14, 2003 at 04:43:20, Russell Reagan wrote:
>
>>I used to use Microsoft Visual C++ 6 Professional (because I got it for $5 from
>>my school, it's normally several hundred at least). I quit using it when I saw
>>that the executable that gcc/g++ created was significantly faster than the
>>executable that MSVC++ 6 Pro created.
>
>Academic versions usually lack the optimizer.
>
>A complete MSVC6 should be competitive or better than any current version of GCC
>for most thing. If not you messed up somewhere.

Well it is doing some optimization, because when I turn on optimizations it is
significantly faster than without, but still not as fast as a simple gcc -O2 or
-O3. You could be right though. It might be handicapped in some way.

Here is a quick example using TSCP.

MSCV 6 Pro default Debug build

Nodes: 550778
Best time: 5608 ms
Nodes per second: 98212 (Score: 0.404)


MSVC 6 Pro default Release build

Nodes: 550778
Best time: 2534 ms
Nodes per second: 217355 (Score: 0.894)


MSVC 6 Pro Release build after some tinkering with optimization settings

Nodes: 550778
Best time: 2494 ms
Nodes per second: 220841 (Score: 0.908)

GCC 3.3.1 Cywgin: gcc

Nodes: 550778
Best time: 4514 ms
Nodes per second: 122015 (Score: 0.502)


GCC 3.3.1 Cywgin: gcc -O1

Nodes: 550778
Best time: 2698 ms
Nodes per second: 204143 (Score: 0.840)


GCC 3.3.1 Cygwin: gcc -O2

Nodes: 550778
Best time: 2438 ms
Nodes per second: 225913 (Score: 0.929)


GCC 3.3.1 Cygwin: gcc -O3

Nodes: 550778
Best time: 2437 ms
Nodes per second: 226006 (Score: 0.929)


Best times:
MSVC6Pro   2494 ms
GCC3.3.1   2437 ms

So there it is roughly equal, although I imagine I could get some more out of
gcc by using some more specific optimization options.

I think the case where I saw gcc give significantly better results was in a
bitboard program I wrote that was somewhat unconventional. It could have been
some rare thing in that program that I was doing that MSVC didn't like that gcc
knew how to handle. Who knows.



This page took 0 seconds to execute

Last modified: Thu, 15 Apr 21 08:11:13 -0700

Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.