Re: Wait free queue
- From: Chris Cochran <chris@xxxxxxxxxxxxx>
- Date: Sat, 14 Feb 2009 19:53:14 -0800 (PST)
Chris,
Thank you for your inquistive curiosity. I suspected that referring
to "help wanted" might imply work-pushing, rather than work-pulling.
But you can't pull work from a thread that requires fifo order. So it
seems reasonable for each client thread to be able to establish its
own ordering requirements, without the producer threads necessarily
having to know that information.
Am I using PDR? I don't know, am I? For some strange reason, I am
having a mental block on exactly what that acronym is for (Physician's
Desk Reference maybe?). Could you please illuminate what PDR and PDR
pointer actually are? As a matter of fact, I have been enjoying your
conversations with Dmitriy on these topics, and look forward to more.
What I have built is an all-purpose multi-threaded heap management
service: wait-free, non-atomic, per-thread local allocator, free
blocks from any other allocator by any thread, and always provides
ideal alignments. It operates at three scales: a multi-threaded
managed large virtual memory block allocator and recycler, a power of
2 allocator within virtual memory blocks, and a suballocator for all
block sizes below 4k and zero fragmentation. It maintains a separate
free list for each block size. It's performance is usually around 4x
the standard new/delete, often much better than that. It is fully
self contained and makes no system calls except for the large virtual
memory block management.
This service will successfully delete blocks allocated by other
threads, even after the originating thread has terminated. This
capability is not available from the standard new/delete, nor from any
other heap implementation I know of--they all just crash, mine does
not.
I have been writing allocators since the 8-bit days, so at some point,
we just may have ourselves a shoot-out...
Regards,
Chris Cochran
.
- Follow-Ups:
- Re: Wait free queue
- From: Chris M. Thomasson
- Re: Wait free queue
- From: Chris M. Thomasson
- Re: Wait free queue
- References:
- Re: Wait free queue
- From: Codewarp
- Re: Wait free queue
- From: Dmitriy V'jukov
- Re: Wait free queue
- From: Codewarp
- Re: Wait free queue
- From: Chris M. Thomasson
- Re: Wait free queue
- Prev by Date: Re: Wait free queue
- Next by Date: Re: Wait free queue
- Previous by thread: Re: Wait free queue
- Next by thread: Re: Wait free queue
- Index(es):
Relevant Pages
|