Subj : Re: speed-up critical regions To : comp.programming.threads From : amorox Date : Thu Jun 16 2005 02:26 pm I want to thank Phil for his useful link. The Hoard is the kind of implementation I was looking for. The Hoard solution, as described by Emery Berger in his paper, is based on local heaps per thread. But as I thought, the first operation he's doing in the alloc/free functions is to lock the 'choosen' heap. So, local heaps don't mean mutex free. You still have the overhead of a lock operation in every allocation. For David, what do you mean by: > "If thread A allocates an object, get it from thread A's allocator. If it's later freed by thread B, that's fine, just return the object to thread B's allocator". The object is created inside a pool owned by the allocator of thread A. How can you transfer it inside a pool owned by the allocator of thread B? Or what do you understand by 'just return the object to thread B's allocator'? I remind you that objects are inside pools which are contiguous memory areas. Regards, Ovidiu .