Laurent Rineau
8eefb7f173
Merge branch 'master' into pr/lrineau/8273
2025-02-07 16:10:52 +01:00
Laurent Rineau
bc44c91536
add a benchmark for Polyline_simplification_2
...
Using the tool `compare.py` from [Google Benchmark Tools][1]...
[1]: https://github.com/google/benchmark/blob/main/docs/tools.md
...given that:
- `benchmark_simplify-AFTER` is the file `benchmark_simplify.cpp`
compiled from this branch, and flags `-msse3 -DNDEBUG -O3`
with gcc version 14.2.1,
- `benchmark_simplify-BEFORE` is the same file
compiled from the branch `master`, and same flags and compiler.
the command line was:
```shell
compare.py benchmarks build/Release/benchmark/Polyline_simplification_2/benchmark_simplify-BEFORE build/Release/benchmark/Polyline_simplification_2/benchmark_simplify-AFTER Data/data/wkt/norway-MP.wkt --benchmark_repetitions=20 --benchmark_counters_tabular=true --benchmark_time_unit=s
```
The following results show that there is a speedup
of about 15% (mean) or 18% (median)
```
RUNNING: build/Release/benchmark/Polyline_simplification_2/benchmark_simplify-BEFORE Data/data/wkt/norway-MP.wkt --benchmark_repetitions=20 --benchmark_counters_tabular=true --benchmark_time_unit=s --benchmark_out=/tmp/tmpvxyq_i24
2025-02-06T17:23:08+01:00
Running Data/data/wkt/norway-MP.wkt
Run on (16 X 800 MHz CPU s)
CPU Caches:
L1 Data 48 KiB (x8)
L1 Instruction 32 KiB (x8)
L2 Unified 1280 KiB (x8)
L3 Unified 24576 KiB (x1)
Load Average: 1.47, 2.07, 1.65
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Benchmark Time CPU Iterations #points #polygons #polylines nb of constraints nb of sub-constraints nb of vertices
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
simplify file Data/data/wkt/norway-MP.wkt 0.067 s 0.067 s 12 0 848 0 849 40.568k 40.565k
simplify file Data/data/wkt/norway-MP.wkt 0.066 s 0.066 s 12 0 848 0 849 40.568k 40.565k
simplify file Data/data/wkt/norway-MP.wkt 0.065 s 0.065 s 12 0 848 0 849 40.568k 40.565k
simplify file Data/data/wkt/norway-MP.wkt 0.073 s 0.072 s 12 0 848 0 849 40.568k 40.565k
simplify file Data/data/wkt/norway-MP.wkt 0.066 s 0.066 s 12 0 848 0 849 40.568k 40.565k
simplify file Data/data/wkt/norway-MP.wkt 0.064 s 0.064 s 12 0 848 0 849 40.568k 40.565k
simplify file Data/data/wkt/norway-MP.wkt 0.067 s 0.066 s 12 0 848 0 849 40.568k 40.565k
simplify file Data/data/wkt/norway-MP.wkt 0.071 s 0.071 s 12 0 848 0 849 40.568k 40.565k
simplify file Data/data/wkt/norway-MP.wkt 0.064 s 0.064 s 12 0 848 0 849 40.568k 40.565k
simplify file Data/data/wkt/norway-MP.wkt 0.064 s 0.064 s 12 0 848 0 849 40.568k 40.565k
simplify file Data/data/wkt/norway-MP.wkt 0.074 s 0.074 s 12 0 848 0 849 40.568k 40.565k
simplify file Data/data/wkt/norway-MP.wkt 0.066 s 0.066 s 12 0 848 0 849 40.568k 40.565k
simplify file Data/data/wkt/norway-MP.wkt 0.075 s 0.074 s 12 0 848 0 849 40.568k 40.565k
simplify file Data/data/wkt/norway-MP.wkt 0.074 s 0.074 s 12 0 848 0 849 40.568k 40.565k
simplify file Data/data/wkt/norway-MP.wkt 0.076 s 0.076 s 12 0 848 0 849 40.568k 40.565k
simplify file Data/data/wkt/norway-MP.wkt 0.078 s 0.078 s 12 0 848 0 849 40.568k 40.565k
simplify file Data/data/wkt/norway-MP.wkt 0.074 s 0.074 s 12 0 848 0 849 40.568k 40.565k
simplify file Data/data/wkt/norway-MP.wkt 0.067 s 0.067 s 12 0 848 0 849 40.568k 40.565k
simplify file Data/data/wkt/norway-MP.wkt 0.064 s 0.064 s 12 0 848 0 849 40.568k 40.565k
simplify file Data/data/wkt/norway-MP.wkt 0.069 s 0.069 s 12 0 848 0 849 40.568k 40.565k
simplify file Data/data/wkt/norway-MP.wkt_mean 0.069 s 0.069 s 20 0 848 0 849 40.568k 40.565k
simplify file Data/data/wkt/norway-MP.wkt_median 0.067 s 0.067 s 20 0 848 0 849 40.568k 40.565k
simplify file Data/data/wkt/norway-MP.wkt_stddev 0.005 s 0.005 s 20 0 0 0 0 0 0
simplify file Data/data/wkt/norway-MP.wkt_cv 6.73 % 6.68 % 20 0.00% 0.00% 0.00% 0.00% 0.00% 0.00%
RUNNING: build/Release/benchmark/Polyline_simplification_2/benchmark_simplify-AFTER Data/data/wkt/norway-MP.wkt --benchmark_repetitions=20 --benchmark_counters_tabular=true --benchmark_time_unit=s --benchmark_out=/tmp/tmp59ui0dsw
2025-02-06T17:29:26+01:00
Running Data/data/wkt/norway-MP.wkt
Run on (16 X 800.961 MHz CPU s)
CPU Caches:
L1 Data 48 KiB (x8)
L1 Instruction 32 KiB (x8)
L2 Unified 1280 KiB (x8)
L3 Unified 24576 KiB (x1)
Load Average: 1.61, 1.94, 1.73
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Benchmark Time CPU Iterations #points #polygons #polylines nb of constraints nb of sub-constraints nb of vertices
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
simplify file Data/data/wkt/norway-MP.wkt 0.054 s 0.054 s 13 0 848 0 849 40.568k 40.565k
simplify file Data/data/wkt/norway-MP.wkt 0.057 s 0.057 s 13 0 848 0 849 40.568k 40.565k
simplify file Data/data/wkt/norway-MP.wkt 0.059 s 0.059 s 13 0 848 0 849 40.568k 40.565k
simplify file Data/data/wkt/norway-MP.wkt 0.065 s 0.065 s 13 0 848 0 849 40.568k 40.565k
simplify file Data/data/wkt/norway-MP.wkt 0.058 s 0.058 s 13 0 848 0 849 40.568k 40.565k
simplify file Data/data/wkt/norway-MP.wkt 0.056 s 0.056 s 13 0 848 0 849 40.568k 40.565k
simplify file Data/data/wkt/norway-MP.wkt 0.053 s 0.053 s 13 0 848 0 849 40.568k 40.565k
simplify file Data/data/wkt/norway-MP.wkt 0.061 s 0.061 s 13 0 848 0 849 40.568k 40.565k
simplify file Data/data/wkt/norway-MP.wkt 0.058 s 0.058 s 13 0 848 0 849 40.568k 40.565k
simplify file Data/data/wkt/norway-MP.wkt 0.052 s 0.052 s 13 0 848 0 849 40.568k 40.565k
simplify file Data/data/wkt/norway-MP.wkt 0.054 s 0.054 s 13 0 848 0 849 40.568k 40.565k
simplify file Data/data/wkt/norway-MP.wkt 0.055 s 0.054 s 13 0 848 0 849 40.568k 40.565k
simplify file Data/data/wkt/norway-MP.wkt 0.054 s 0.054 s 13 0 848 0 849 40.568k 40.565k
simplify file Data/data/wkt/norway-MP.wkt 0.055 s 0.054 s 13 0 848 0 849 40.568k 40.565k
simplify file Data/data/wkt/norway-MP.wkt 0.054 s 0.054 s 13 0 848 0 849 40.568k 40.565k
simplify file Data/data/wkt/norway-MP.wkt 0.059 s 0.059 s 13 0 848 0 849 40.568k 40.565k
simplify file Data/data/wkt/norway-MP.wkt 0.057 s 0.057 s 13 0 848 0 849 40.568k 40.565k
simplify file Data/data/wkt/norway-MP.wkt 0.058 s 0.057 s 13 0 848 0 849 40.568k 40.565k
simplify file Data/data/wkt/norway-MP.wkt 0.055 s 0.055 s 13 0 848 0 849 40.568k 40.565k
simplify file Data/data/wkt/norway-MP.wkt 0.059 s 0.059 s 13 0 848 0 849 40.568k 40.565k
simplify file Data/data/wkt/norway-MP.wkt_mean 0.057 s 0.057 s 20 0 848 0 849 40.568k 40.565k
simplify file Data/data/wkt/norway-MP.wkt_median 0.057 s 0.056 s 20 0 848 0 849 40.568k 40.565k
simplify file Data/data/wkt/norway-MP.wkt_stddev 0.003 s 0.003 s 20 0 0 0 0 0 0
simplify file Data/data/wkt/norway-MP.wkt_cv 5.37 % 5.32 % 20 0.00% 0.00% 0.00% 0.00% 0.00% 0.00%
Comparing build/Release/benchmark/Polyline_simplification_2/benchmark_simplify-BEFORE to build/Release/benchmark/Polyline_simplification_2/benchmark_simplify-AFTER
Benchmark Time CPU Time Old Time New CPU Old CPU New
-----------------------------------------------------------------------------------------------------------------------------------------------
simplify file Data/data/wkt/norway-MP.wkt -0.1941 -0.1942 0 0 0 0
simplify file Data/data/wkt/norway-MP.wkt -0.1269 -0.1272 0 0 0 0
simplify file Data/data/wkt/norway-MP.wkt -0.0900 -0.0918 0 0 0 0
simplify file Data/data/wkt/norway-MP.wkt -0.1049 -0.1065 0 0 0 0
simplify file Data/data/wkt/norway-MP.wkt -0.1204 -0.1206 0 0 0 0
simplify file Data/data/wkt/norway-MP.wkt -0.1279 -0.1282 0 0 0 0
simplify file Data/data/wkt/norway-MP.wkt -0.1962 -0.1961 0 0 0 0
simplify file Data/data/wkt/norway-MP.wkt -0.1370 -0.1377 0 0 0 0
simplify file Data/data/wkt/norway-MP.wkt -0.0951 -0.0962 0 0 0 0
simplify file Data/data/wkt/norway-MP.wkt -0.1851 -0.1852 0 0 0 0
simplify file Data/data/wkt/norway-MP.wkt -0.2720 -0.2716 0 0 0 0
simplify file Data/data/wkt/norway-MP.wkt -0.1702 -0.1717 0 0 0 0
simplify file Data/data/wkt/norway-MP.wkt -0.2700 -0.2703 0 0 0 0
simplify file Data/data/wkt/norway-MP.wkt -0.2644 -0.2634 0 0 0 0
simplify file Data/data/wkt/norway-MP.wkt -0.2861 -0.2856 0 0 0 0
simplify file Data/data/wkt/norway-MP.wkt -0.2492 -0.2488 0 0 0 0
simplify file Data/data/wkt/norway-MP.wkt -0.2310 -0.2301 0 0 0 0
simplify file Data/data/wkt/norway-MP.wkt -0.1382 -0.1389 0 0 0 0
simplify file Data/data/wkt/norway-MP.wkt -0.1401 -0.1406 0 0 0 0
simplify file Data/data/wkt/norway-MP.wkt -0.1464 -0.1467 0 0 0 0
simplify file Data/data/wkt/norway-MP.wkt_pvalue 0.0000 0.0000 U Test, Repetitions: 20 vs 20
simplify file Data/data/wkt/norway-MP.wkt_mean -0.1804 -0.1806 0 0 0 0
simplify file Data/data/wkt/norway-MP.wkt_median -0.1547 -0.1549 0 0 0 0
simplify file Data/data/wkt/norway-MP.wkt_stddev -0.3458 -0.3479 0 0 0 0
simplify file Data/data/wkt/norway-MP.wkt_cv -0.2018 -0.2041 0 0 0 0
OVERALL_GEOMEAN -0.1797 -0.1800 0 0 0 0
```
2025-02-06 17:44:28 +01:00
Laurent Rineau
e5001d1a50
update our CMake version 3.18...3.31
...
That will suppress the warnings about `CMP0167` (from CMake 3.30):
```
CMake Warning (dev) at cmake/modules/display-third-party-libs-versions.cmake:37 (find_package):
Policy CMP0167 is not set: The FindBoost module is removed. Run "cmake
--help-policy CMP0167" for policy details. Use the cmake_policy command to
set the policy and suppress this warning.
```
2025-02-04 14:32:37 +01:00
Sebastien Loriot
25afb37051
Triangulation_2: Do not include kernel header ( #8527 )
...
## Summary of Changes
Do not include `Exact_predicates_inexact_constructions_kernel.h` and
`Simple_cartesian.h`.
Change order of `#include` statements so that the T2 files come first.
Forward declare `Epick` in `Constrained_triangulation_plus_2` where it
is used for defining a `Default` for the template parameter (which is
not documented).
## Release Management
* Affected package(s): Triangulation_2
* License and copyright ownership: unchanged.
2024-11-08 16:11:41 +01:00
Sébastien Loriot
fb605cdd39
remove -D that is not compatible with "older" cmake versions
2024-10-22 08:19:49 +02:00
Andreas Fabri
9e75ab340d
Use add_compile_definitions
2024-10-09 11:58:52 +01:00
Andreas Fabri
9346dc4bbc
Fix dependencies.txt
2024-10-08 14:44:23 +01:00
Sébastien Loriot
41b096c91a
Merge remote-tracking branch 'cgal/5.6.x-branch'
2024-09-11 17:23:50 +02:00
Sébastien Loriot
4115afa3da
Merge remote-tracking branch 'cgal/5.5.x-branch'
2024-09-10 13:51:15 +02:00
Sébastien Loriot
8448129a3a
fix conditional compilation
2024-09-09 17:59:24 +02:00
Laurent Rineau
3a223ebd1e
cmake_minimum_required(VERSION 3.12...3.29)
2024-06-06 20:19:44 +02:00
Laurent Rineau
d7bf7dde55
Merge pull request #8119 from afabri/Polyline_simplification-doc_bug-GF
...
Polyline_simplification: fix documentation
2024-04-10 18:04:15 +02:00
Andreas Fabri
7059b5b524
Polyline_simplification: fix documentation
2024-04-04 07:56:45 +01:00
Sébastien Loriot
910945eb5f
undo dependency changes + always use core if not disabled
2024-02-27 16:19:28 +01:00
Sébastien Loriot
3b30756cd3
do not depend on CGAL_Core
2024-02-27 14:46:18 +01:00
Andreas Fabri
e4558a4d4b
Merge branch 'master' into CORE-boost_mp_number-GF
2024-02-23 17:04:37 +01:00
Laurent Rineau
28632f21fc
Merge branch 'master' into CGAL-Qt6-GF
...
# Conflicts:
# Installation/CHANGES.md
2023-09-14 17:40:05 +02:00
Laurent Rineau
48f37a14dc
remove occurrences of Qt5
2023-09-14 17:02:21 +02:00
Nicolas Saillant
a4136707b2
More CMakeLists Updates for QT6
2023-09-11 09:51:06 +02:00
Nicolas Saillant
0303b8dfd5
Update CMakeLists for QT6
2023-09-05 15:58:43 +02:00
Sébastien Loriot
68bc244d02
Merge remote-tracking branch 'cgal/master' into HEAD
2023-08-24 14:14:12 +02:00
albert-github
93001308f4
Merge branch 'master' into feature/issue_7395
...
# Conflicts:
# Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementPointLocation_2.h
# Arrangement_on_surface_2/doc/Arrangement_on_surface_2/Concepts/ArrangementVerticalRayShoot_2.h
2023-08-18 11:10:42 +02:00
albert-github
e4dff1ffaf
issue #7395 Improvement of layout of model relations
...
Corrections after review.
2023-07-21 11:41:27 +02:00
albert-github
ad41766454
issue #7395 Improvement of layout of model relations
...
Corrected `cgalModels` to `cgalHasModes` inside `cgalHasNodelsBegin` / `cgalHasModelsEnd`
2023-07-18 13:23:37 +02:00
albert-github
4e5578d469
issue #7395 Improvement of layout of model relations
...
- based on review
2023-07-15 13:12:15 +02:00
Sébastien Loriot
125542eb62
Merge remote-tracking branch 'cgal/master'
2023-07-11 12:59:21 +02:00
albert-github
301728a8a9
issue #7395 Improvement of layout of model relations
...
- Completed the cgalModels part
2023-07-09 12:43:36 +02:00
albert-github
ee2a55279d
issue #7395 Improvement of layout of model relations
...
- Completed the cgalHasModel part
- corrected spelling of `Has Model` and `Is Model Of` to `Has model` and `Is model of`
2023-07-06 17:35:34 +02:00
Sébastien Loriot
b66afab814
Merge remote-tracking branch 'sloriot/CGAL-using_c++17_stl' into HEAD
2023-07-05 11:29:35 +02:00
Sébastien Loriot
04f52791d6
manually fix iterator category that seems to not work correctly when stacking boost::iterator_adaptor
...
also restore std::prev
2023-06-27 09:41:47 +02:00
Sébastien Loriot
4854c500b0
restore usage of boost prior/next that breaks at runtime
2023-06-26 17:41:16 +02:00
Sébastien Loriot
f936680600
Merge remote-tracking branch 'cgal/master' into HEAD
2023-06-15 18:48:39 +02:00
Sébastien Loriot
9cdfe70abb
Merge remote-tracking branch 'sloriot/CGAL-toward_6.0'
2023-06-15 11:34:09 +02:00
Sébastien Loriot
604dcdc435
boost::optional => std::optional
2023-06-15 10:57:09 +02:00
Laurent Rineau
0576e883f9
Merge branch 'CGAL-fix-Qt5-CMake-GF' into CGAL-Qt6-GF
...
# Conflicts:
# AABB_tree/demo/AABB_tree/CMakeLists.txt
# Alpha_shapes_3/demo/Alpha_shapes_3/CMakeLists.txt
# Arrangement_on_surface_2/demo/Arrangement_on_surface_2/CMakeLists.txt
# Circular_kernel_3/demo/Circular_kernel_3/CMakeLists.txt
# GraphicsView/demo/Alpha_shapes_2/CMakeLists.txt
# GraphicsView/demo/Apollonius_graph_2/CMakeLists.txt
# GraphicsView/demo/Bounding_volumes/CMakeLists.txt
# GraphicsView/demo/Circular_kernel_2/CMakeLists.txt
# GraphicsView/demo/Generator/CMakeLists.txt
# GraphicsView/demo/GraphicsView/CMakeLists.txt
# GraphicsView/demo/L1_Voronoi_diagram_2/CMakeLists.txt
# GraphicsView/demo/Largest_empty_rect_2/CMakeLists.txt
# GraphicsView/demo/Periodic_2_triangulation_2/CMakeLists.txt
# GraphicsView/demo/Polygon/CMakeLists.txt
# GraphicsView/demo/Segment_Delaunay_graph_2/CMakeLists.txt
# GraphicsView/demo/Segment_Delaunay_graph_Linf_2/CMakeLists.txt
# GraphicsView/demo/Snap_rounding_2/CMakeLists.txt
# GraphicsView/demo/Spatial_searching_2/CMakeLists.txt
# GraphicsView/demo/Stream_lines_2/CMakeLists.txt
# GraphicsView/include/CGAL/Qt/DemosMainWindow_impl.h
# Hyperbolic_triangulation_2/demo/Hyperbolic_triangulation_2/CMakeLists.txt
# Installation/cmake/modules/CGAL_add_test.cmake
# Linear_cell_complex/demo/Linear_cell_complex/CMakeLists.txt
# Optimal_transportation_reconstruction_2/demo/Optimal_transportation_reconstruction_2/CMakeLists.txt
# Periodic_3_triangulation_3/demo/Periodic_3_triangulation_3/CMakeLists.txt
# Periodic_3_triangulation_3/demo/Periodic_Lloyd_3/CMakeLists.txt
# Polyhedron/demo/Polyhedron/polyhedron_demo_macros.cmake
# Polyline_simplification_2/demo/Polyline_simplification_2/CMakeLists.txt
# Principal_component_analysis/demo/Principal_component_analysis/CMakeLists.txt
# Triangulation_3/demo/Triangulation_3/CMakeLists.txt
# Triangulation_on_sphere_2/demo/Triangulation_on_sphere_2/CMakeLists.txt
2023-04-28 13:49:58 +02:00
Laurent Rineau
fe5a36c08e
fix all the CMakeLists.txt for Qt5
2023-04-27 17:27:37 +02:00
Sébastien Loriot
e82d970d19
boost::next -> std::next
2023-04-23 22:37:07 +02:00
Sébastien Loriot
99619dc634
boost::prior -> std::prev
2023-04-23 22:37:07 +02:00
Andreas Fabri
0574c6ba4c
Change the remaining CMakeLists.txt [skip ci]
2023-04-20 16:35:14 +01:00
Andreas Fabri
0d320e48a8
Merge branch 'Number_types-fix_VC2017_boost_mp-GF' into CORE-boost_mp_number-GF
2023-03-17 08:28:10 +01:00
albert-github
2d60f46985
issue #7231 Improvement of layout of refines relations.
...
- Adjusted cgalRefines according to reviews
- Implemented it in all files
2023-03-14 17:37:50 +01:00
Sébastien Loriot
9e72361537
All packages depends now on CGAL_Core (like Kernel)
2023-02-20 15:24:16 +01:00
Mael
153c603209
Merge branch 'master' into CGAL-Clean_CMakeLists.txt-GF
2023-01-27 22:09:02 +01:00
Laurent Rineau
c5176ef327
Merge pull request #7166 from MaelRL/SLS-Memorize_trisegments-GF
...
Fix seed computation in SLS offset computation
2023-01-27 20:52:10 +01:00
Mael Rouxel-Labbé
e2f1940747
Fix spelling
2023-01-04 16:17:15 +01:00
albert-github
eed54a0ae5
spelling corrections
...
Some spelling corrections (Directories starting with `O`-`S` , first part),
some backward work
some forward work
2022-11-15 18:45:39 +01:00
Mael Rouxel-Labbé
4fc486b195
Purge CMakeLists.txts from obsolete code / noise
2022-09-06 16:19:11 +02:00
Mael Rouxel-Labbé
7cb21c24b0
Uniformize message() for missing 3rd party libraries
...
STATUS for non-essential, NOTICE for important stuff
2022-09-06 16:07:31 +02:00
Sebastien Loriot
b8e3ab9a48
Merge pull request #6599 from afabri/Polyline_simplification-constref-GF
...
Polyline simplification: Use const& in demo instead of copying a polygon
2022-05-26 18:11:38 +02:00
Andreas Fabri
d476a017fa
Polyline_simplification: Clean up examples
2022-05-24 12:38:28 +01:00