id,summary,reporter,owner,description,type,status,milestone,component,version,severity,resolution,keywords,cc 712,"Regex: multi-processor scalability, user-defined allocators",r_emek,John Maddock,"{{{ I'm using boost-regex library, and I'm running into multi-threading scalability issues. When tested on a machine with several CPUs, my performance tests show improvement of about 60-70% when moving from a single thread to 2 threads. Question 1: Is anyone aware of this problem? Is there a known solution? From some testing we've done, it seems that the cause of the scalability issue is problematic implementation of std:allocator. This is a known issue on some operating systems (e.g., Solaris 8). Some of the boost::regex classes (e.g., match_results) accept a user-defined allocator. However, as far as I can understand there's no way to completely override the use of std::allocator. Question 2: is there a way to completely prevent boost / regex from using std::allocator? If no, can such a capability be added? (One solution to this problem would be global overriding the 'new' and 'delete' operators - but for various reasons this cannot be done in the application I'm developing). }}}",Support Requests,closed,,regex,None,,None,,