When should I consider parallel search ?

Discussion of chess software programming and technical issues.

Moderators: bob, hgm, Harvey Williamson

Forum rules
This textbox is used to restore diagrams posted with the [d] tag before the upgrade.
MahmoudUthman
Posts: 234
Joined: Sat Jan 17, 2015 10:54 pm

When should I consider parallel search ?

Post by MahmoudUthman » Sat Jun 10, 2017 5:56 am

My engine could Currently fall anywhere between 2700:2900 by my estimate on the CCRL single threaded list , when should I consider converting to a parallel search implementation ? I haven't done any optimization yet whether to the search or the evaluation and I haven't implemented any razoring

mar
Posts: 2001
Joined: Fri Nov 26, 2010 1:00 pm
Location: Czech Republic
Full name: Martin Sedlak

Re: When should I consider parallel search ?

Post by mar » Sat Jun 10, 2017 7:34 am

What kind of question is that? Are you able to make your own decisions? :)
Do whatever you want and when you see fit.
LazySMP is trivial to implement and can be done in less than a week (even less if you can afford to work fulltime on it).

User avatar
hgm
Posts: 23716
Joined: Fri Mar 10, 2006 9:06 am
Location: Amsterdam
Full name: H G Muller
Contact:

Re: When should I consider parallel search ?

Post by hgm » Sat Jun 10, 2017 8:31 am

Never consider parallel search. It is an inefficient usage of resources.

User avatar
cdani
Posts: 2104
Joined: Sat Jan 18, 2014 9:24 am
Location: Andorra
Contact:

Re: When should I consider parallel search ?

Post by cdani » Sat Jun 10, 2017 2:11 pm

hgm wrote:Never consider parallel search. It is an inefficient usage of resources.
?

User avatar
hgm
Posts: 23716
Joined: Fri Mar 10, 2006 9:06 am
Location: Amsterdam
Full name: H G Muller
Contact:

Re: When should I consider parallel search ?

Post by hgm » Sat Jun 10, 2017 3:24 pm

Scaling is never perfect, the various threads will always duplicate some of each other's work. So it is more efficient to run single threaded.

User avatar
cdani
Posts: 2104
Joined: Sat Jan 18, 2014 9:24 am
Location: Andorra
Contact:

Re: When should I consider parallel search ?

Post by cdani » Sat Jun 10, 2017 4:03 pm

hgm wrote:Scaling is never perfect, the various threads will always duplicate some of each other's work. So it is more efficient to run single threaded.
As you sure know an engine playing with 2 cpus play stronger than playing with only one cpu :-) Or maybe I did not understand where you want to go.

Henk
Posts: 5816
Joined: Mon May 27, 2013 8:31 am

Re: When should I consider parallel search ?

Post by Henk » Sat Jun 10, 2017 4:05 pm

It's about nodes per euro.

User avatar
cdani
Posts: 2104
Joined: Sat Jan 18, 2014 9:24 am
Location: Andorra
Contact:

Re: When should I consider parallel search ?

Post by cdani » Sat Jun 10, 2017 4:09 pm

Henk wrote:It's about nodes per euro.
I'm about elo per euro :-)

User avatar
hgm
Posts: 23716
Joined: Fri Mar 10, 2006 9:06 am
Location: Amsterdam
Full name: H G Muller
Contact:

Re: When should I consider parallel search ?

Post by hgm » Sat Jun 10, 2017 4:26 pm

cdani wrote:As you sure know an engine playing with 2 cpus play stronger than playing with only one cpu :-) Or maybe I did not understand where you want to go.
But you can run twice as many engines that use 1 CPU on the same hardware. If you let each of those think twice as long, they are each stronger than the 2-CPU engine. And you still get the same number of moves per second.

Letting them think longer is a more efficient way to get more Elo than parallel search.

User avatar
cdani
Posts: 2104
Joined: Sat Jan 18, 2014 9:24 am
Location: Andorra
Contact:

Re: When should I consider parallel search ?

Post by cdani » Sat Jun 10, 2017 4:43 pm

hgm wrote: Letting them think longer is a more efficient way to get more Elo than parallel search.
Sure, only that you will not be able to do it in a tournament :-)

Post Reply