shindavid/AlphaZeroArcade

Object pools

shindavid opened this issue · 1 comments

Currently, Node objects and NNEvaluation objects are constructed and destroyed via new and delete. It would be more efficient to use object pools.

The details of this are quite sensitive, due to multi-threading, block allocations, and smart-pointer usage.

Issue #42 should be resolved first, as that change will affect memory allocation/deallocation patterns.

Finally completed. Node/edge objects now come from an object pool, without needing any smart-pointer mechanics.