Not logged inRybka Chess Community Forum
Up Topic Rybka Support & Discussion / Aquarium / Speed-Up Custom Tasks
- - By pawnslinger (****) Date 2020-02-13 19:05
I don't know why I didn't think of this before...

With the recent discussion of the new Zen 3990x chip, the idea of using multiple threads per engine instance has come up.  I had considered this previously but had decided against it (I don't know why for sure).  But then I got to thinking about Custom Tasks last night.   Normally, unless you use scripts, Custom Task uses 1 engine and are pretty slow comparatively.  But if you cutback the number of engines and increase the thread count per engine... well, Custom Tasks will execute faster.

And I do A LOT of Custom Tasks.  It is my favorite method to expand the alternative base to make sure I don't overlook any shot (especially one that might come from my opponent).  Also, with fewer engines, I am able to increase the the cache size allocated to each engine, by at least an order of magnitude.  And I have always thought my IDeA engines used too little cache.

Now if I can just find $4000.00 to buy that 3990x (I am drooling over) <grin>.
Parent - - By Uwak (***) Date 2020-03-01 16:16
It is still faster overall to allocate single thread engines for IDeA's evaluation of single positions. But for tasks such as prolongation when it appears only one thread is doing the task generation, it seems better to use multiple engines. So I have a multiple thread engine which I use sometimes but most of the time, single-thread engines for IDeA. Actually you can test using the same starting position. Run IDeA using single thread engines and count positions. Then repeat with a fresh tree and run IDeA using multiple thread engine/engines. You will find more positions with single thread engines.
Parent - - By pawnslinger (****) Date 2020-03-01 18:53
I suspect you are right.  But since many of us minimize (or don't use at all), the automatic prolongation.... well, you see my point, right?

My work is heavily influenced by Custom Tasks, where, on average, I generate 5 alternatives at a time.  Sometimes as many as 20 or as few as 2.  I suspect people would be shocked if they saw me actually work -- it is too hard to describe in this form.

I have actually experimented with using a mix of multi-threaded and single-threaded engines at the same time.  But I currently don't use that method.   I think I would, if I had a 16+ core CPU.
Parent - - By Uwak (***) Date 2020-03-02 20:48
I also seldom use auto prolongation. Most of the time, I use a 3 alternatives x 5 depth custom task. It is my workhorse. I add alternatives or increase the depth depending on the position. I build slowly manually (I hate bloated trees full of useless analysis). Then a brief auto prolongation stage to smoothen the loose ends.
Parent - By pawnslinger (****) Date 2020-03-03 07:51 Upvotes 1
I like your method.  Very similar in many respects to my own.  But please be careful with that prolongation cycle (or 2) at the finish.  If there is any material change in the analysis, I would take a close look at the analysis of the primary variation to insure that a "singleton" has not thrown a monkey wrench into the gears... so to speak.  SOOOO many times I have seen either the alternative generation or the prolongation cycle throw off the whole tree by a SINGLE WRONG evaluation in a critical node... so check the variation to make sure before committing a critical move on the board.
Up Topic Rybka Support & Discussion / Aquarium / Speed-Up Custom Tasks

Powered by mwForum 2.27.4 © 1999-2012 Markus Wichitill