Oliver Abert:
Hi Everyone,
I am using Boost Threads (1.38) as threading library and I also use the thread_specific_ptr to store a minor amount of data per thread (I think currently it is like 5 different pointer values per thread). Technically everything works out fine, but I am having a performance problem on Mac OS X. On Linux the performance is 10 times faster than on Mac OS. If I use pthreads on Mac OS I have identical performance to the Linux version. Both versions are running on the same machine using 8 threads both.
What does your profiler say?
Is there any known problem with shared pointers on Mac OS?
shared_ptr should use the same code on both platforms, either sp_counted_base_gcc_x86.hpp or sp_counted_base_gcc_ppc.hpp, depending on whether your CPU is Intel or PowerPC; see boost/detail/sp_counted_base.hpp. There is no Mac OS-specific path.