2017-08-04 17:38 GMT+02:00 Sijie Guo <guosi...@gmail.com>: > On Aug 4, 2017 5:27 AM, "Enrico Olivelli" <eolive...@gmail.com> wrote: > > Hi bookkeepers, > I noticed that digests are computed on the mailWorkerPool during addEntry > I think that it is better to do such computation outside the pool > > > I have drafted a patch to share my code > https://github.com/apache/bookkeeper/pull/389 > the patch covers only LedgerHandleAdv as it is just a proof of concept > > opinions ? > > > Because there is always a thread need to run this computation, I am not > sure how much performance gain you can get from this? > > Do you have any performance results before making any such changes? >
not yet I see your point: as the number of CPUs is limited from an higher point of view the global throughput will not change My idea comes from the fact the addEntry is called from applications threads, the mainWorkerPool is used for delivering callbacks, if I keep busy a thread from that pool and it is bounded in size I am limiting the capacity to deliver callbacks to application threads which are waiting for acks of adds or reads. Another point is that it easy to track them/profile "application" threads, the mainWorkerPool is shared and does many kind of operations. I will do some tests and share my results (as soon as I will be back from vacation) -- Enrico > > Sijie > > > -- Enrico >