I have just been back to chess hobby after a while and have a "silly" question: which version of Visual Studio - 6.0 or 2008 is better for chess, at least for chess speed?
(I confuse because some my friends still prefer 6.0 than 2008).
Thanks for your helps.
Visual C++ 6.0 vs 2008?
Moderators: hgm, Rebel, chrisw
-
- Posts: 1437
- Joined: Wed Apr 21, 2010 4:58 am
- Location: Australia
- Full name: Nguyen Hong Pham
-
- Posts: 4052
- Joined: Thu May 15, 2008 9:57 pm
- Location: Berlin, Germany
- Full name: Sven Schüle
Re: Visual C++ 6.0 vs 2008?
I know Visual Studio 6.0 quite well, still being forced to use it at work in an old project where the effort to change the tool environment is bigger than the negative impact of keeping it. It is a "fossil", the compiler does not conform to current C++ standard in a couple of issues, it is not available for free, it is no longer supported officially by Microsoft, it has no full 64 bit support. And, to come back to your main question, for chess I think that the 6.0 compiler creates slower code than e.g. VS 2008.phhnguyen wrote:I have just been back to chess hobby after a while and have a "silly" question: which version of Visual Studio - 6.0 or 2008 is better for chess, at least for chess speed?
(I confuse because some my friends still prefer 6.0 than 2008).
Thanks for your helps.
It is possible, of course, to use VC++ 6.0 for chess development if a copy of it is available. A good argument for using 6.0 may be that someone is used to it, and therefore thinks that he can work with it quite efficiently while accepting some drawbacks. This is one of the key points: it is often a good choice to use the tool that one is most familiar with.
But in general, I would propose to use VS 2008 or 2010 mainly for the reasons given above.
Sven
-
- Posts: 12541
- Joined: Wed Mar 08, 2006 8:57 pm
- Location: Redmond, WA USA
Re: Visual C++ 6.0 vs 2008?
VS 2008 is better in every way that I can possibly imagine.phhnguyen wrote:I have just been back to chess hobby after a while and have a "silly" question: which version of Visual Studio - 6.0 or 2008 is better for chess, at least for chess speed?
(I confuse because some my friends still prefer 6.0 than 2008).
Thanks for your helps.
-
- Posts: 224
- Joined: Mon Mar 12, 2007 7:31 pm
- Location: Bonn, Germany
Re: Visual C++ 6.0 vs 2008?
I never compared the performance, but I would be very surprised if 2008 has not at least the same speed like 6.0phhnguyen wrote:I have just been back to chess hobby after a while and have a "silly" question: which version of Visual Studio - 6.0 or 2008 is better for chess, at least for chess speed?
6.0 (which is more then 10 years old) has a vastly inferior IDE and a huge number of compiler bugs / violations of C++ standard.
By all means avoid 6.0
-
- Posts: 1437
- Joined: Wed Apr 21, 2010 4:58 am
- Location: Australia
- Full name: Nguyen Hong Pham
Re: Visual C++ 6.0 vs 2008?
Thanks all. Now it is clear to me. I will use VS2008. I guess some my friends "hate" VS200x because they use it for C# and compare with Java IDEs.
BTW, does anyone compare VS200x with gcc (in Windows)? Any change for gcc (in term of performance)?
BTW, does anyone compare VS200x with gcc (in Windows)? Any change for gcc (in term of performance)?
-
- Posts: 892
- Joined: Sun Nov 19, 2006 9:16 pm
- Location: Russia
Re: Visual C++ 6.0 vs 2008?
Out of the box Microsoft compiler is faster. GCC have more compiler options that can be tuned for performance. For fair speed compare it is important to use latest GCC versions, but they are difficult to get on Windows platform.phhnguyen wrote:BTW, does anyone compare VS200x with gcc (in Windows)? Any change for gcc (in term of performance)?
Robust code should be possible to build in both systems.
-
- Posts: 454
- Joined: Sat Apr 04, 2009 6:44 pm
- Location: Bulgaria
Re: Visual C++ 6.0 vs 2008?
MSVC++ 6.0 doesnt support 'long long' types, keep that in mind.
-
- Posts: 1437
- Joined: Wed Apr 21, 2010 4:58 am
- Location: Australia
- Full name: Nguyen Hong Pham
Re: Visual C++ 6.0 vs 2008?
Do you mean 64 bit integer? In VC6.0 we can declare int64_t or LONG LONG.Mincho Georgiev wrote:MSVC++ 6.0 doesnt support 'long long' types, keep that in mind.
I can develop most of chess jobs, from engine to GUI, using only VC6.0. However, it is too "old" to continue to use.
-
- Posts: 454
- Joined: Sat Apr 04, 2009 6:44 pm
- Location: Bulgaria
Re: Visual C++ 6.0 vs 2008?
long long is not 64 bit integer under x86, rather is 2 32 bit integers, placed by the compiler in separate registers. However, maybe I'm wrong and forgot about it, since it was a long time ago using the vc 6.0, but I'm still pretty sure that 6.0 doesn't support neither __int64 nor unsigned long long types.
P.S. I remembered...
It does support __int64 only, but not unsigned long long. So it is preference dependent, i guess.
P.S. I remembered...
It does support __int64 only, but not unsigned long long. So it is preference dependent, i guess.
-
- Posts: 4052
- Joined: Thu May 15, 2008 9:57 pm
- Location: Berlin, Germany
- Full name: Sven Schüle
Re: Visual C++ 6.0 vs 2008?
In MSVC++ 6.0 the platform-specific types "__int64" and "unsigned __int64" are both available. "long long" and "unsigned long long" are not available yet but the size is the same. With an appropriate portable definition of integer data types you can always use "higher level" types names like int64_t, uint64_t.Mincho Georgiev wrote:long long is not 64 bit integer under x86, rather is 2 32 bit integers, placed by the compiler in separate registers. However, maybe I'm wrong and forgot about it, since it was a long time ago using the vc 6.0, but I'm still pretty sure that 6.0 doesn't support neither __int64 nor unsigned long long types.
P.S. I remembered...
It does support __int64 only, but not unsigned long long. So it is preference dependent, i guess.
To actually get a 64 bit value placed in one 64 bit register by the compiler you need both a 64 bit box *and* a newer compiler, of course.
Sven