Hi all, I have been evaluating the TBB library lately and on of the thing that is really interesting to me is the scalable_allocator.
What I did was override the global new and delete operators with the scalable_allocator found in TBB. Actually, we developed our own allocator (that we have been using for years) so I simply replaced the calls to our allocator by the calls to TBB.
This seems to work really well and faster than our allocator, however we encountered what seems to be race conditions in the TBB allocator. The process is running and using CPU, but seems to be in an infinite loop, for several minutes. I did a core dump and found several threads in scalable_free. What's interesting, is that after the core dump, the process resumed its operation completely and was yet again running - no need to kill it or restart it.
BTW, I am running this on 8 cores machines (Intel & AMD) that has 8-16GB of memory on Windows 2003 Server. The problem occurred on both hardware.
Anyone has an idea on why this occurs or how I can fix it? It seems I am using the latest release of TBB for Windows, downloaded about 3 weeks ago.