Glaurung 2.0.1 Windows build available

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

Moderator: Ras

User avatar
Jim Ablett
Posts: 2291
Joined: Fri Jul 14, 2006 7:56 am
Location: London, England
Full name: Jim Ablett

Re: Glaurung 2.0.1 Windows build available

Post by Jim Ablett »

How much speed loss do you expect from using the cygwin version?
The cygwin build take quite a big nps performance hit compares to
the intel one, about -200 nps. I would hazard a guess of something in the region 10 - 20 elo loss.

I'm going to compile another Intel build using the latest msvc 2008 headers/libraries to see if it works any better.
(last one was compiled against msvc 2005)

rgds,
Jim.
Tord Romstad
Posts: 1808
Joined: Wed Mar 08, 2006 9:19 pm
Location: Oslo, Norway

Re: Glaurung 2.0.1 Windows build available

Post by Tord Romstad »

Jim Ablett wrote:Hi Tord,

Thank very much for the new Glaurung release.
And thanks to you for trying to make it work under Windows. :)
The 'divide by zero' bug seems to occur when Glaurung is
in book (using it's own opening book). I get no crashes using
Arena mainbook.
This sounds extremely weird. There are only two division operations in the entire book code, and in both cases the division is by a nonzero constant (16 in one case, 2 in the other). Also, the book code has not been touched since Glaurung 2 - ε/5 (apart from the fact that there is now a UCI parameter for selecting the book file), and I don't recall anyone reporting problems using that version with its own book.

Tord
User avatar
Denis P. Mendoza
Posts: 415
Joined: Fri Dec 15, 2006 9:46 pm
Location: Philippines

Re: Glaurung 2.0.1 Windows build available

Post by Denis P. Mendoza »

Just heard some news Master Jim. You've done some very fast compiles, which makes me wonder. Did you happen to use Vtune Analyzer to use the /Qssp compiler option? I'm still studying this option you used in Obender. Or is it just your usual straight "magic" commandlines :D I'm always following your style but this one is different. Just asking Master Yoda!

BTW Tord, the new Glaurung 2 src series has been very, very friendly to the Intel and MSVC compilers in Windows lately. and we really thank you for that. The peculiar thing was, it's getting better and faster, though compiler warnings are growing in numbers. In 32-bit mode, t's like riding in a rally-cross Mitsubishi Evolution. going in 64-bit mode...feels like riding side-by-side with Michael Schumacher :D. The acceleration from single to dual-core is fantastic.
perejaslav
Posts: 240
Joined: Sat Mar 18, 2006 4:01 am
Location: Cold

Re: Glaurung 2.0.1 Windows build available

Post by perejaslav »

The problem of JA builds is extremely long uci_engineabout string, so Glaurung 2.01 may have problem running in Chessbase guis.
Try this one :wink: http://mihd.net/nq7lx0
Tord Romstad
Posts: 1808
Joined: Wed Mar 08, 2006 9:19 pm
Location: Oslo, Norway

Re: Glaurung 2.0.1 Windows build available

Post by Tord Romstad »

Denis P. Mendoza wrote:BTW Tord, the new Glaurung 2 src series has been very, very friendly to the Intel and MSVC compilers in Windows lately. and we really thank you for that. The peculiar thing was, it's getting better and faster, though compiler warnings are growing in numbers.
Is it just the usual "performance warnings", or something else? The performance warnings can safely be ignored. They are caused by functions like this:

Code: Select all

inline bool Position::pawn_is_doubled(Color c, Square s) const {
  return this->pawns_of_color(c) & squares_behind(c, s);
}
The compiler complains about the expensive cast of a bitboard (this->pawns_of_color(c) and squares_behind(c, s) are both of the Bitboard type) to a bool. But because the function is inlined, and because the return value is always just used as a condition in an "if" statement, a decent compiler will always be able to optimize away the cast.

It would be easy to prevent the warnings by changing the return type of this and similar functions from bool to Bitboard, but it would make the code look a bit uglier.
In 32-bit mode, t's like riding in a rally-cross Mitsubishi Evolution. going in 64-bit mode...feels like riding side-by-side with Michael Schumacher :D. The acceleration from single to dual-core is fantastic.
Between 32-bit and 64-bit, the difference in speed would probably be slightly smaller if you define USE_32BIT_ATTACKS (near the top of bitboard.h).

The acceleration from single to dual core should indeed be slightly better in Glaurung 2.0 than in Glaurung 2 - ε/5, but the really big difference is the parallell search speedup on systems with more than 2 CPUs.

Tord
Tord Romstad
Posts: 1808
Joined: Wed Mar 08, 2006 9:19 pm
Location: Oslo, Norway

Re: Glaurung 2.0.1 Windows build available

Post by Tord Romstad »

perejaslav wrote:The problem of JA builds is extremely long uci_engineabout string, so Glaurung 2.01 may have problem running in Chessbase guis.
Try this one :wink: http://mihd.net/nq7lx0
Yes, apparently there is a bug in the Chessbase GUIs which make them crash when the UCI_EngineAbout string is long. Thanks to whoever it was who found the problem (was it you, perhaps?)! :D

I hearby grant everyone who compiles Windows binaries of Glaurung 2 the permission to remove the UCI_EngineAbout parameter before compiling (lines 145--149 in ucioption.cpp).

:)

Tord
Tord Romstad
Posts: 1808
Joined: Wed Mar 08, 2006 9:19 pm
Location: Oslo, Norway

Re: Glaurung 2.0.1 Windows build available

Post by Tord Romstad »

Eelco de Groot wrote:To be honest Tord, I do miss the adjustable Aggressiveness and Cowardice etc. from Glaurung 1 a bit :P I hope you don't mind me saying so... I hope they will return :!:
I don't mind you saying so, and I also hope they will return some day. The reason they are not included in Glaurung 2.0 is that I need to write an evaluation function before I can offer any interesting user configurable evaluation parameters. The evaluation function in Glaurung 2.0 is still very simple and primitive. In particular, it knows almost nothing about king safety, which is what the Aggressiveness and Cowardice parameters in Glaurung 1 are about.

Tord
User avatar
Jim Ablett
Posts: 2291
Joined: Fri Jul 14, 2006 7:56 am
Location: London, England
Full name: Jim Ablett

Re: Glaurung 2.0.1 Windows build available

Post by Jim Ablett »

Hi Denis,
Did you happen to use Vtune Analyzer to use the /Qssp compiler option? I'm still studying this option you used in Obender. Or is it just your usual straight "magic" commandlines I'm always following your style but this one is different.
No I didn't run Vtune on it, but I did notice a small performance increase
when using the QSSP (enable software-based speculative pre-computation) switch.
Some code benefits, some doesn't, Glaurung does so I used it (every little helps :wink: )

Jim.
Spock

Re: Glaurung 2.0.1 Windows build available

Post by Spock »

I'm not sure if I've missed this - is there a 64-bit Windows build available ?
Tord Romstad
Posts: 1808
Joined: Wed Mar 08, 2006 9:19 pm
Location: Oslo, Norway

Re: Glaurung 2.0.1 Windows build available

Post by Tord Romstad »

Spock wrote:I'm not sure if I've missed this - is there a 64-bit Windows build available ?
Hello Ray,

Just wait a few more days, please. When I have managed to solve the remaining problems with Glaurung 2.0.1 (most importantly, the problem that it doesn't seem to work at all in Mac OS X 10.4), there will be highly optimized 32-bit and 64-bit binaries for all platforms available from my web site.

Tord