Perft(13)

Discussion of chess software programming and technical issues.

Moderators: hgm, Rebel, chrisw

Uri Blass
Posts: 10282
Joined: Thu Mar 09, 2006 12:37 am
Location: Tel-Aviv Israel

Re: First benchmark results from the new machine

Post by Uri Blass »

sje wrote:First benchmark results from the new machine (3.4 GHz Core i7-2600):

Perft(8): 26.2138 seconds
Perft(9): 233.047 seconds
Perft(10): 2939.82 seconds

All the totals so far are correct, and perft(11) is now in progress. I may re-run perft(12) as a final test before switching the perft(13) calculation to the new machine.
I think that it also may be interesting to know max(perft(1)) at 10 plies,11 plies,12 plies and it can help to get a reliable estimate for perft(20)
User avatar
sje
Posts: 4675
Joined: Mon Mar 13, 2006 7:43 pm

Subtotal results after 532 hours wall time

Post by sje »

Subtotal results after 532 hours wall time:

0 of 20 perft(12)
2 of 400 perft(11)
55 of 5,362 perft(10)
1,089 of 72,078 perft(9)
16,312 of 822,518 perft(8) (ca. 1.98% of total)

Current total time estimate: 1,118 days (ca. 37 months)

The above is from the 2 GHz dual core machine. Testing on the new 3.4 GHz quad has a perft(8) generated every 15 seconds; that's about 7.8 times faster.
User avatar
sje
Posts: 4675
Joined: Mon Mar 13, 2006 7:43 pm

Re: First benchmark results from the new machine

Post by sje »

sje wrote:First benchmark results from the new machine (3.4 GHz Core i7-2600):

Perft(8): 26.2138 seconds
Perft(9): 233.047 seconds
Perft(10): 2939.82 seconds

All the totals so far are correct, and perft(11) is now in progress. I may re-run perft(12) as a final test before switching the perft(13) calculation to the new machine.
Perft(11): 36352.1 seconds

I've started perft(12) on the new machine.
User avatar
sje
Posts: 4675
Joined: Mon Mar 13, 2006 7:43 pm

Re: First benchmark results from the new machine

Post by sje »

Uri Blass wrote:I think that it also may be interesting to know max(perft(1)) at 10 plies,11 plies,12 plies and it can help to get a reliable estimate for perft(20)
Another idea is to do series extrapolation for the perft values for each of the twenty ply zero moves and then add these. I'll guess that this will give a better estimate than the series extrapolation of the 1, 20, 400, 8902... root sums.
User avatar
sje
Posts: 4675
Joined: Mon Mar 13, 2006 7:43 pm

Re: First benchmark results from the new machine

Post by sje »

sje wrote:Perft(11): 36352.1 seconds
I made a transcription error; the actual value was:

Perft(11): 52363.1 seconds

The time increase over perft(10) is a factor of 17.81.
Uri Blass
Posts: 10282
Joined: Thu Mar 09, 2006 12:37 am
Location: Tel-Aviv Israel

Re: First benchmark results from the new machine

Post by Uri Blass »

sje wrote:
Uri Blass wrote:I think that it also may be interesting to know max(perft(1)) at 10 plies,11 plies,12 plies and it can help to get a reliable estimate for perft(20)
Another idea is to do series extrapolation for the perft values for each of the twenty ply zero moves and then add these. I'll guess that this will give a better estimate than the series extrapolation of the 1, 20, 400, 8902... root sums.
I am not sure what you mean here.

My method clearly give a good estimate for perft(i) for i<=12 with a relatively little effort and it is possible to prove mathematically that it gives good estimate for perft(i) also for bigger i with a relatively little effort to calculating the exact value.

I thought to try to use the multiplication of perft(1) for random games but I can prove that it does not give a correct estimate
User avatar
sje
Posts: 4675
Joined: Mon Mar 13, 2006 7:43 pm

Re: First benchmark results from the new machine

Post by sje »

Uri Blass wrote:
sje wrote:
Uri Blass wrote:I think that it also may be interesting to know max(perft(1)) at 10 plies,11 plies,12 plies and it can help to get a reliable estimate for perft(20)
Another idea is to do series extrapolation for the perft values for each of the twenty ply zero moves and then add these. I'll guess that this will give a better estimate than the series extrapolation of the 1, 20, 400, 8902... root sums.
I am not sure what you mean here.
The idea is to sum the twenty extrapolations of the root move perft sequences rather than just the single extrapolation of the sums. This gives twenty times as much data from which to make predictions.
User avatar
sje
Posts: 4675
Joined: Mon Mar 13, 2006 7:43 pm

Re: First benchmark results from the new machine

Post by sje »

sje wrote:
sje wrote:Perft(11): 36352.1 seconds
I made a transcription error; the actual value was:

Perft(11): 52363.1 seconds

The time increase over perft(10) is a factor of 17.81.
The new machine is running perft(12) and has completed about 12% of the 72,078 perft(8) subtotals in about 30 hours. So I expect the total perft(12) run time to be just under 11 days. If the above 17.81 factor holds for the perft(13) run, then one can guess that the new box will finish perft(13) in about 190 days, ten days over my original estimate.
User avatar
sje
Posts: 4675
Joined: Mon Mar 13, 2006 7:43 pm

Subtotal results after 603 hours wall time

Post by sje »

Subtotal results after 603 hours wall time:

0 of 20 perft(12)
2 of 400 perft(11)
58 of 5,362 perft(10)
1,158 of 72,078 perft(9)
17,708 of 822,518 perft(8) (ca. 2.15% of total)

Current total time estimate: 1,167 days (ca. 38 months)

The above is from the 2 GHz dual core machine.

I'm a bit surprised to see that there haven't been any power outages in nearly a month.
User avatar
sje
Posts: 4675
Joined: Mon Mar 13, 2006 7:43 pm

Subtotal results after 32 days wall time

Post by sje »

Subtotal results after 32 days wall time:

0 of 20 perft(12)
4 of 400 perft(11)
83 of 5,362 perft(10)
1,657 of 72,078 perft(9)
22,673 of 822,518 perft(8) (ca. 2.76% of total)

Current total time estimate: 1,145 days (ca. 38 months)

The above is from the 2 GHz dual core machine.