cgal/Mesh_2/include
Laurent Rineau f1d5ec3a62 Use Boost.Bimap in Double_map.
Boost.Bimap is a bit faster (150-190% faster), and less
memory-consumer. Whereas the old Double_map implementation does not seem to
be sensitive to caching effects, the Bimap implementation seems to be
faster when run twice or more.

See the measurements bellow. Three runs of ./bench_double_map.bimap and
./bench_double_map.cgal. They are both compiled with -O2, and
./bench_double_map.bimap is compiled with -DCGAL_USE_BOOST_BIMAP
-I<path_to_boost_bimap>.

lrineau@tsetse ~/CGAL/Packages/Mesh_2/test/Mesh_2 $ for in in 1 2 3; do
  echo 'BIMAP';
  ./bench_double_map.bimap 200000 30;
  echo 'OLD DOUBLE_MAP';
 ./bench_double_map.cgal 200000 30;
done
BIMAP
Total time:           4.41933
Time for 'insert':    3.15152
Time for 'pop_front': 1.26781
Resident memory:      14843904
Virtual  memory:      26423296
OLD DOUBLE_MAP
Total time:           6.581
Time for 'insert':    4.5593
Time for 'pop_front': 2.0217
Resident memory:      18030592
Virtual  memory:      29519872
BIMAP
Total time:           3.56746
Time for 'insert':    2.49262
Time for 'pop_front': 1.07484
Resident memory:      14843904
Virtual  memory:      26427392
OLD DOUBLE_MAP
Total time:           6.76597
Time for 'insert':    4.70729
Time for 'pop_front': 2.05869
Resident memory:      18034688
Virtual  memory:      29519872
BIMAP
Total time:           3.51347
Time for 'insert':    2.43964
Time for 'pop_front': 1.07383
Resident memory:      14856192
Virtual  memory:      26427392
OLD DOUBLE_MAP
Total time:           6.74597
Time for 'insert':    4.6183
Time for 'pop_front': 2.12768
Resident memory:      17854464
Virtual  memory:      29523968
2007-03-14 18:53:37 +00:00
..
CGAL Use Boost.Bimap in Double_map. 2007-03-14 18:53:37 +00:00