Eternity II Processing Update – Jan 2020

Another half, another Eternity II update. This half was a good half for the runner, the cluster infra was doing a fairly good job of staying up and processing on the Eternity II job. You can see that in the nice upward curve that started in September.

The trend for percentage of boards investigated continues to be a downward one. This is appears even more evident in the graph, now with 27% processed, but that is only an increase in 1%.

Depth is crawling, with the halfway point remaining at about 24 tiles placed. On October 19th we found a board with 156 tiles placed. It was again rapidly marked as Invalid, but we still strive to get deeper into the board space.

On December 15 we finished the last 20 depth board. 20 only had 413 boards left to be searched in July, so it took quite a long time for so few boards, the focus was really on higher level boards. But, for perspective, 21 has over 10,000,000 boards left to investigate, so we may not see the end of that board in the next six months unless I tweak the algorithm to be more breadth first than depth first. But since the search space still seems to be so large I have little hope of completing it by doing a full search, I’d rather keep it more oriented towards depth first.

Eternity II Processing Update – July 2019

Checking in with another update on the progress of the Eternity II solver. Progress has been pretty good for the past six months, though we’re starting to hit more bottlenecks, probably as we’re getting more data in the database. Currently my cluster is not processing as I do some maintenance on it, which is taking a lot longer than I expected.

I got a new machine with a Threadripper as a main device, and so decided to throw it at this job instead of just the cluster. That results in a significant uptick in processing due to the raw compute of the Threadripper (woo hoo!). As you can see we’re over 150 million boards, with about 28% of the boards that have been found already processed. This is a decrease in the percentage of boards processed from 36% back in January. Seems we’re still generating boards faster than we can investigate them.

For depth, we’re seeing a similar trend, but we are getting a little deeper into the search graph. About half of the boards are at depth 24 or better, an improvement of 1 since January. In fact, on June 6 we finished processing the last of the board with 19 tiles placed, so all active boards have at least 20 tiles, pretty good progress from the bottom. As for progress at the top, that was an early find. On January 27th a board was found with 154 pieces placed. An improvement by 4, but, I was hoping to see more improvement over the latter five months.

Eternity II Processing Update – Jan 2019

Now that I’ve got the Eternity II solver running on the cluster in a sustained way and I don’t intend to make any major changes to it, it’s a good time to see how it’s doing! Though it was exciting to get the clue pieces, unfortunately it meant I had to restart the run, which got setup in November, which means I’ve run for just over a month. That said, the progress is pretty good!

We’re at nearly 20 million boards generated, with about 5 million of those boards tested against. Done boards are boards that produced new results to look at, while Invalid boards are boards that were shown to result in 0 possible configurations after examining it. It’d be nice if that Invalid count was a little higher as each invalid board prunes off large swaths of the search space, but can’t expect too much. This is a hard problem after all.

I’m also happy with how deep we’ve managed to get. The board selection is random, but definitely favors deeper boards (boards with more pieces placed) than shallow boards. On December 26th it found a board with a depth of 150, but it was rather quickly marked as Invalid since no other pieces could be found. Over half of the boards have 23 pieces placed or less, so there’s still a lot of work to be done!