Subj : ANN: AppCore updates and performance enhancements added... To : comp.programming.threads From : Chris Thomasson Date : Mon May 02 2005 07:43 pm I have restructured some of the code and added some performance enhancements to AppCore. Here are some of the changes: - Made the doubly-linked list API public and added some memory barrier variants of the push/pop functions so that it can support modification under lock-free reads. - Added HyperThread friendly spinlock yield functions. - Added a simple HyperThread friendly threading API that automatically offsets the thread stacks in order to get around the aliasing problem inherit in some IA32 processors. - Aligned the global lock-free node cache anchor on a cache-line boundary. Adds marked performance improvement. - Added minor tweaks to the assembly files. Stuff like changing "movl %0, %eax" to "xorl %eax, %eax", ect... - Added a lock-free stack pop function that does not depend on Hazard Pointers. - Removed a couple of interlocked operations from the lock-free atomic reference count API. This provides a marked performance improvement. - Added versioning. AppCore is now at version: 0.0.1 ( pre-alpha ) http://appcore.home.comcast.net/appcore_0-0-1-i686.zip ( entire library. ) http://appcore.home.comcast.net/ac_src_index.html ( you can browse the projects file index ) Any questions and/or comments? -- http://appcore.home.comcast.net/ (portable lock-free data-structures) .