Boost logo

Boost :

Subject: Re: [boost] [lockfree::fifo] Review
From: Tim Blechmann (tim_at_[hidden])
Date: 2009-12-10 11:53:41


>> all 32 bit platforms that i know of are using the full 32bit as address
>> space (the lower two bits are 0 because of 32bit alignment) ... on 64bit
>> platforms it is quite different ... ppc64, ia64 and x86_64 all use just
>> a part of the full address space (iirc 48 bit for x86_64) ... the rest
>> should be usable as aba prevention tag.
>
> 48 bits is only for the current x86_64 platforms, it will get upgraded
> to 64 bits eventually.
>
> However, such platforms will also support DWCAS, so you have your backup
> solution.

it is also performance related, though ... on x86_64 (nehalem) my fifo
stress test runs about 25% faster with pointer/tag compression than with
cmpxchg16b ...
that said, the lock-free property is for me more important than the
throughput, since i am using it for soft real-time systems ...

tim

-- 
tim_at_[hidden]
http://tim.klingt.org
I had nothing to offer anybody except my own confusion
  Jack Kerouac



Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk