Re: [Boost-bugs] [Boost C++ Libraries] #3218: string_algo algorithms are quite slow in some popular compiler/OS/hardware situations

Subject: Re: [Boost-bugs] [Boost C++ Libraries] #3218: string_algo algorithms are quite slow in some popular compiler/OS/hardware situations
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2009-06-26 02:23:38


#3218: string_algo algorithms are quite slow in some popular compiler/OS/hardware
situations
------------------------------------------------------+---------------------
 Reporter: Yuri Goldfeld <yuri_goldfeld@…> | Owner: pavol_droba
     Type: Bugs | Status: new
Milestone: To Be Determined | Component: string_algo
  Version: Boost 1.37.0 | Severity: Problem
 Keywords: performance string_algo strings |
------------------------------------------------------+---------------------

Comment(by Yuri Goldfeld <yuri_goldfeld@…>):

 For all 3 platforms, the only common requirement is the availability of
 Boost headers in some directory. Platform-specific requirements for
 running my simple test program:

 Linux: gcc (probably version 3.3 or higher).

 Mac OS X: none (comes with gcc 4.0 or higher).

 Windows: Visual Studio (2008 or higher, though I'm sure an older version
 will work).

 Steps to build and run my simple test program:

 '''Linux'''
 Create a directory and put attached files StrUtils.hpp and perf.cpp there.
 Go to that directory and do, from command line:

 {{{g++ -I $BOOST_DIR -DUNIX32 -O2 perf.cpp -o perf_test}}}

 where $BOOST_DIR is the path to your Boost headers. Now, run the program:

 {{{./perf_test}}}

 '''Mac'''

 Exactly the same steps as for Linux.

 '''Windows'''

 I can provide you with a Visual Studio project file, but it might be
 easier to just do it yourself. Open MS Visual Studio and create a new
 project/solution; make it a Win32 Console Application that is empty, with
 no precompiled headers. Add the two attached files, StrUtils.hpp and
 perf.cpp, into the project. Click Project / Properties. In the
 Configuration: dropdown, select Release (or something that contains that
 word). Click Configuration Properties / C++ / General, and in Additional
 Include Directories browse to where you Boost headers are located on the
 disk. Now, click Configuration Properties / C++ / Preprocessor, and for
 Preprocessor Definitions, add ";WIN32" to the end of whatever is there
 already. Now, in the Configuration: dropdown, select Debug. Repeat the
 Add'l Include Dirs and Preprocessor Defs steps. Finally, click OK.

 Select Release configuration in the main dropdown in the toolbar and press
 F7 to build program. Now, you can run it from the command line (cd to
 <path to your project>\Release, and run "boost_perf" or whatever you named
 your project).

 The above is how I do it as a VC++ noob, but if you're a VC++ wizard, go
 right ahead.

-- 
Ticket URL: <https://svn.boost.org/trac/boost/ticket/3218#comment:1>
Boost C++ Libraries <http://www.boost.org/>
Boost provides free peer-reviewed portable C++ source libraries.

This archive was generated by hypermail 2.1.7 : 2017-02-16 18:50:00 UTC