Boost logo

Boost :

From: (noreply_at_[hidden])
Date: 2006-08-22 04:19:14

Support Requests item #1544410, was opened at 2006-08-22 11:19
Message generated for change (Tracker Item Submitted) made by Item Submitter
You can respond by visiting:

Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: regex
Group: None
Status: Open
Resolution: None
Priority: 5
Submitted By: Roy (r_emek)
Assigned to: John Maddock (johnmaddock)
Summary: Regex: multi-processor scalability, user-defined allocators

Initial Comment:
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).


You can respond by visiting:

Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
Boost-bugs mailing list

Boost list run by bdawes at, gregod at, cpdaniel at, john at