Author: Robert Hyatt
Date: 19:17:36 04/16/01
Go up one level in this thread
On April 16, 2001 at 17:28:15, Uri Blass wrote: >I think it is possible to do deterministic programs that use more than one >processor by using more than one processor only to do things faster. > >Examples: > >1)using more than one processor to calculate the evaluation function faster. If your evaluation uses 50% of total time, then you can get a max speedup of 2 with an infinite number of processors, assuming that an infinite number of processors could drive the evaluation time to zero. Not very good... >2)using more than one processor to generate the pseudo legal moves faster. This is probably less than 10% of the total time. Again, it won't work. > >I guess that it is more simple to do it than using more than one processor for >the search when one of the disadvantages is the fact that the program is only >for x processors when the programmer decides about x in the design decision. > >Here is example of using two proccesors to calculate >x1+x2+....x64 (The evaluation function may have a number of this type) > >step 1:proccesor 1 calculates y=x1+x2+....x32 >step 2:proccesor 2 calculates z=x33+x34....+x64 at the same time of step 1 >step 3:processor 2 gives z to processor 1 >step 4:processor 1 caluclates y+z > >This is only for 2 processors but by the same idea it is possible to change a >program to be only for 8 processors if 8 processors are going to be used against >kramnik. > >I have some questions about it > >1)Am I right to assume that writing a program only for x processors by this way >is more simple then using more than one processor in the regular way? possibly. But far worse performance, unless your program spends 99% of the time in the evaluation function. Not normal. Crafty is at 50% and it seems to be higher than most... >2)What is the speed improvement that it is possible to get by using more than >one processor only to calculate things faster. speedup is limited by the sequential (non-parallel) time. If this is 50% of total time then you can _never_ go more than 2x faster. >3)Did programmers try to use more than one processor in order to calculate a >more complex evaluation function and not in order to search deeper? no... First, it is impractical. Second, second-order search terms make this impossible... as all the first order terms have to be done before any of the second order terms. In crafty, I need all the second-order terms before any third-order stuff can be computed. There is too much inter-dependence to make it easy to calculate chunks in parallel. > >Uri
This page took 0 seconds to execute
Last modified: Thu, 15 Apr 21 08:11:13 -0700
Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.