From: Joaquín Mª López Muñoz (joaquin_at_[hidden])
Date: 2005-10-26 03:27:16
While in the process of replacing iterator helpers from
in favor of boost::iterator_facade as my internal iterator generation
Boost.MultiIndex, I've discovered an unpleasant increase in compilation
The attached program shows the problem. Compilation times when
using boost::iterator_facade are *way* higher than with good old
boost::bidirectional_iterator_helper (to test it yourself, just
comment/uncomment the line "#define USE_BOOST_ITERATOR"
in the program):
iterator_facade: ~7 sec.
bidirectional_iterator_helper: less than 1 sec.
iterator_facade: 4.9 sec.
bidirectional_iterator_helper: 2.5 sec.
1. Maybe the test program is flawed and has some (unseen by me)
bias in favor of bidirectional_iterator_helper?
2. If not so, why is iterator_facade so very expensive? Is there
any way to alleviate the problem?
As it stands, I'm not so sure it's a good idea to adopt
my local tests for Boost.MultiIndex show an overall increase in
time of around 25% :(
Thanks for your help,
Joaquín M López Muñoz
Telefónica, Investigación y Desarrollo
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk