cgal/Mesh_2/include/CGAL
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
..
IO
Mesh_2 Use Boost.Bimap in Double_map. 2007-03-14 18:53:37 +00:00
Delaunay_mesh_area_criteria_2.h
Delaunay_mesh_criteria_2.h modify comments after discussion with Jane Tournois. 2006-10-25 15:41:37 +00:00
Delaunay_mesh_face_base_2.h - fix a Rebind bug in <CGAL/Delaunay_mesh_face_base_2.h>, reported by 2006-07-25 09:25:45 +00:00
Delaunay_mesh_local_size_criteria_2.h
Delaunay_mesh_size_criteria_2.h
Delaunay_mesher_2.h
Double_map.h Use Boost.Bimap in Double_map. 2007-03-14 18:53:37 +00:00
Filter_circulator.h
Mesher_level.h updated debug output, if CGAL_MESHES_DEBUG_REFINEMENT_POINTS is defined 2007-03-12 10:38:51 +00:00
Mesher_level_default_implementations.h
Mesher_level_visitors.h
Triangulation_conformer_2.h