multithread search paper and documentation

Discussion of chess software programming and technical issues.

Moderators: hgm, Rebel, chrisw

elcabesa
Posts: 855
Joined: Sun May 23, 2010 1:32 pm

multithread search paper and documentation

Post by elcabesa »

hi,
I'd like to add multithreading to my new engine.
I started reading something and looking inside some multithread engine to start understand the topic.

could you please point me to some easy implementation/ easy to read code , paper, documentation and so on?

I think I'll start letting more than one thread search the starting position indendently just to see if I can control all the thread and whether the data structure are correct or not.

but in the future I'd like to implement a real mt search :)

thank you all
User avatar
Codesquid
Posts: 138
Joined: Tue Aug 23, 2011 10:25 pm
Location: Germany

Re: multithread search paper and documentation

Post by Codesquid »

A good starting point to get an overview is http://chessprogramming.wikispaces.com/Parallel+Search
nanos gigantium humeris insidentes
Daniel Shawul
Posts: 4185
Joined: Tue Mar 14, 2006 11:34 am
Location: Ethiopia

Re: multithread search paper and documentation

Post by Daniel Shawul »

Hashtable is your friend. :) First try sharing it using processes and see what you get. Then go for ABDADA if you are up to it. You might find the easy SMP discussions started by Dan Homan useful.
User avatar
Ajedrecista
Posts: 1968
Joined: Wed Jul 13, 2011 9:04 pm
Location: Madrid, Spain.

Re: Multithread search paper and documentation.

Post by Ajedrecista »

Hello Marco:
elcabesa wrote:hi,
I'd like to add multithreading to my new engine.
I started reading something and looking inside some multithread engine to start understand the topic.

could you please point me to some easy implementation/ easy to read code , paper, documentation and so on?

I think I'll start letting more than one thread search the starting position indendently just to see if I can control all the thread and whether the data structure are correct or not.

but in the future I'd like to implement a real mt search :)

thank you all
I am not a programmer but I have read many times that Viper (a weak version of Glaurung) is very instructive for add SMP to an engine. I do not know if you have looked at Viper source code... anyway, here is the link:

Viper

Good luck!

Regards from Spain.

Ajedrecista.
elcabesa
Posts: 855
Joined: Sun May 23, 2010 1:32 pm

Re: Multithread search paper and documentation.

Post by elcabesa »

thank you all
I'm already reading CPwiki :)
User avatar
velmarin
Posts: 1600
Joined: Mon Feb 21, 2011 9:48 am

Re: Multithread search paper and documentation.

Post by velmarin »

Bobcat would be an easy way to implement in your engine, performance is not impressive, but ... learn ...

https://github.com/Bobcat/bobcat

Also a few months ago there was a discussion in the forum where it was C + +11, with SMP instructions, but can not remember the engine,
You might like ...
Luck ..
elcabesa
Posts: 855
Joined: Sun May 23, 2010 1:32 pm

Re: multithread search paper and documentation

Post by elcabesa »

I can't find dan homan thread, has anyone a link?
petero2
Posts: 687
Joined: Mon Apr 19, 2010 7:07 pm
Location: Sweden
Full name: Peter Osterlund

Re: Multithread search paper and documentation.

Post by petero2 »

velmarin wrote:Also a few months ago there was a discussion in the forum where it was C + +11, with SMP instructions, but can not remember the engine
Maybe you are thinking of this: http://talkchess.com/forum/viewtopic.php?t=48752
User avatar
velmarin
Posts: 1600
Joined: Mon Feb 21, 2011 9:48 am

Re: Multithread search paper and documentation.

Post by velmarin »

petero2 wrote:
velmarin wrote:Also a few months ago there was a discussion in the forum where it was C + +11, with SMP instructions, but can not remember the engine
Maybe you are thinking of this: http://talkchess.com/forum/viewtopic.php?t=48752
Yes, Thanks, I'll put in favorites ...