Subject: Re: [Boost-bugs] [Boost C++ Libraries] #6324: Flyweight performance improvement
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2012-02-01 06:23:31
#6324: Flyweight performance improvement
-------------------------------------------------------+--------------------
Reporter: Koh Ohnishi <k_onishi@â¦> | Owner: joaquin
Type: Bugs | Status: new
Milestone: To Be Determined | Component: multi_index
Version: Boost 1.48.0 | Severity: Problem
Resolution: | Keywords: flyweight, multi_index, hashed_unique, performance
-------------------------------------------------------+--------------------
Comment (by k_onishi@â¦):
Thanks for your comment.
I understood the design policy of Boost.Flyweight.
But I think you can avoid exception by catch clause in erase method of the
factory.
Once you catch the exception, then erasing by iterator.
I had adapted set_factory and improve performance by using erase(key) in
the erase of the factory before posting this ticket. To solve whole
problem completely, I modified multi_index/hashed_index.hpp as well as
using set_factory of flyweight.
I think these problems always stem from iterator manipulation of
multi_index (and unordered). Does anyone have any idea of work around in
multi_index.hashed_index performance issues?
My problem is, or I am worried about, the bad reputation of boost library.
Some commercial projects are using boost::flyweight and
boost::multi_index::hashed_unique expecting O(1) inserting, erasing, and
finding entry, but we had faced on the performance problem of erasing both
flyweight and multi_index at late test phase.
Users cannot imagine erasing of hashed container is time-consuming.
Documentation (tell us which method has performance issue) or work around
or customization (like set_factory) may help my problems.
Thanks,
-- Ticket URL: <https://svn.boost.org/trac/boost/ticket/6324#comment:2> 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:08 UTC