Glaurung 2.2

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

Moderators: hgm, Rebel, chrisw

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

Re: Glaurung 2.2

Post by Tord Romstad »

Hello Roy,

Sorry about these problems. I should have tried compiling under Linux before releasing the source code...

If you want to fix it yourself, do the following changes: Add the following line near the top of square.h and bitboard.h:

Code: Select all

#include <cstdlib>
And this line near the top of search.cpp and ucioption.cpp:

Code: Select all

#include <cstring>
If you are in doubt about exactly where to place these lines, just see where the other #include statements in the files are located. The order of the #include statements should not matter.

If you don't want to do this work yourself, please just wait an hour or two, and I will have Linux binaries available for download.
royb wrote:Also, I'd like to produce a 64-bit binary so tweaks to the Makefile to allow that are appreciated also.
I don't think any tweaks are necessary: In 64-bits Ubuntu Linux, you should get a 64-bit binary with the default Makefile settings.

Tord
royb
Posts: 536
Joined: Thu Mar 09, 2006 12:53 am

Re: Glaurung 2.2

Post by royb »

Tord,

Thanks for the assist. I made the changes you indicated and I got closer but not quite there:

<removed some lines from output>

g++ -DNDEBUG -Wall -g -O3 -fno-exceptions -fomit-frame-pointer -fno-rtti -fstrict-aliasing -c -o search.o search.cpp
search.cpp: In function ‘void<unnamed>::poll()’:
search.cpp:2035: error: ‘strcpy’ was not declared in this scope
search.cpp:2036: error: ‘strncmp’ was not declared in this scope
search.cpp: In function ‘bool<unnamed>::split(const Position&, SearchStack*, int, Value*, Value*, Value*, Depth, int*, MovePicker*, Bitboard, int, bool)’:
search.cpp:2349: error: ‘memcpy’ was not declared in this scope
make: *** [search.o] Error 1

Your help is appreciated!

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

Re: Glaurung 2.2

Post by Tord Romstad »

royb wrote:Tord,

Thanks for the assist. I made the changes you indicated and I got closer but not quite there:

<removed some lines from output>

g++ -DNDEBUG -Wall -g -O3 -fno-exceptions -fomit-frame-pointer -fno-rtti -fstrict-aliasing -c -o search.o search.cpp
search.cpp: In function ‘void<unnamed>::poll()’:
search.cpp:2035: error: ‘strcpy’ was not declared in this scope
search.cpp:2036: error: ‘strncmp’ was not declared in this scope
search.cpp: In function ‘bool<unnamed>::split(const Position&, SearchStack*, int, Value*, Value*, Value*, Depth, int*, MovePicker*, Bitboard, int, bool)’:
search.cpp:2349: error: ‘memcpy’ was not declared in this scope
make: *** [search.o] Error 1

Your help is appreciated!

Roy
My guess:

You forgot to put "#include <cstring>" in search.cpp.

Tord
royb
Posts: 536
Joined: Thu Mar 09, 2006 12:53 am

Re: Glaurung 2.2

Post by royb »

Tord,

Right on the money -- of course it was my mistake!

I now have a 64-bit binary for Glaurung-2.2 !!

Thanks for the help and a wonderful engine!!

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

Re: Glaurung 2.2

Post by Tord Romstad »

royb wrote:Tord,

Right on the money -- of course it was my mistake!

I now have a 64-bit binary for Glaurung-2.2 !!
Great! One more thing you may want to do is to strip the executable: Just type 'strip glaurung' at the command line. This should greatly reduce the size of the executable file.

For Linux users who don't want to compile the source code, the .zip file at my web site now contains 32-bit and 64-bit Linux binaries. These were compiled in Ubuntu 8.10, and it is possible that they don't work in other Linux distributions. I have also added the missing #include statements in the source code, which should now hopefully compile cleanly without any changes in all Linux distributions (assuming that the necessary development tools are installed, of course).
Thanks for the help and a wonderful engine!!
I hope you'll like it. :)

Tord
mcostalba
Posts: 2684
Joined: Sat Jun 14, 2008 9:17 pm

Re: Glaurung 2.2

Post by mcostalba »

Tord Romstad wrote:Hi all,

The source code and Mac OS X executables for Glaurung 2.2 are now available from my web site. Executables for GNU/Linux and Windows will follow shortly.

Tord

Hi Tord,

thanks a lot for this new version, I will download immediately and diff against 2.1, just to be sure I don't miss _any_ change :D

I am revisiting the razoring just now, I start to have serious doubts on the second condition at depth <= OnePly so I am now testing with a less aggressive formula, also less aggressive then your original one. Approximate eval instead of full eval still stands because qsearch() calls evaluate() anyway just few instructions later.

In case you are interested I can post the list of bugs (or candidates bug) I have found so far in Glaurung. It will take a bit of time because I have found them during developing, when the code was already much different from the original, but because I use a source control system I can pick up all of them and post for you.


It is an honor for me that you look at Stockfish sources, if you want I can send to you privately my developing version (that is already stronger then Stockfish 1.1) so that you can look at the last snapshots.


Thanks again for your wonderful engine!
Marco
User avatar
meschle
Posts: 200
Joined: Tue Apr 01, 2008 11:53 pm

Re: Glaurung 2.2

Post by meschle »

thanks tord - glaurung is my favorite engine for analysis after rybka. in fact it is faster in some positions than rybka. I believe glaurung could be in the top three engines in the foreseeable future - cheers
Regards Mark

Quad Q6600 3.0 Ghz, Vista 64bit, 4gb Ram
Spock

Re: Glaurung 2.2

Post by Spock »

Tord Romstad wrote: <snip> recent tests indicate that the version I prepared for the OPCCC is considerably stronger than 2.1. I have therefore fixed a handful of very minor bugs, polished the code a little, and published the result as Glaurung 2.2.
I've played 3 opponents at chess960 so far (3 x 100), and based on those games it is 60-70 ELO stronger than 2.1.
I don't know if that will hold with further games, but so far it is looking very good indeed :)
Tord Romstad
Posts: 1808
Joined: Wed Mar 08, 2006 9:19 pm
Location: Oslo, Norway

Re: Glaurung 2.2

Post by Tord Romstad »

Spock wrote:
Tord Romstad wrote: <snip> recent tests indicate that the version I prepared for the OPCCC is considerably stronger than 2.1. I have therefore fixed a handful of very minor bugs, polished the code a little, and published the result as Glaurung 2.2.
I've played 3 opponents at chess960 so far (3 x 100), and based on those games it is 60-70 ELO stronger than 2.1.
I don't know if that will hold with further games, but so far it is looking very good indeed :)
Sounds good, but the Elo improvement will be smaller in normal chess. As I wrote before, the most important change in the new version is that the program now evaluates space. This is extremely important in Chess960, but not quite so important when playing normal chess and cheating by using an opening book.

There are still some relatively easy improvements waiting to be made in Chess960: Glaurung still doesn't evaluate development.

Thanks for the early results!

Tord
User avatar
Dr.Wael Deeb
Posts: 9773
Joined: Wed Mar 08, 2006 8:44 pm
Location: Amman,Jordan

Re: Glaurung 2.2

Post by Dr.Wael Deeb »

Tord Romstad wrote:
Spock wrote:
Tord Romstad wrote: <snip> recent tests indicate that the version I prepared for the OPCCC is considerably stronger than 2.1. I have therefore fixed a handful of very minor bugs, polished the code a little, and published the result as Glaurung 2.2.
I've played 3 opponents at chess960 so far (3 x 100), and based on those games it is 60-70 ELO stronger than 2.1.
I don't know if that will hold with further games, but so far it is looking very good indeed :)
Sounds good, but the Elo improvement will be smaller in normal chess. As I wrote before, the most important change in the new version is that the program now evaluates space. This is extremely important in Chess960, but not quite so important when playing normal chess and cheating by using an opening book.

There are still some relatively easy improvements waiting to be made in Chess960: Glaurung still doesn't evaluate development.

Thanks for the early results!

Tord
didn't know that using an opening book is cheating :lol:
Opening theory is in trouble regards,
Dr.D
_No one can hit as hard as life.But it ain’t about how hard you can hit.It’s about how hard you can get hit and keep moving forward.How much you can take and keep moving forward….