Clement Jamin
9c5cddbbc3
Global optimizers: better parallel performance
...
- We used to have a thread-local variable for cell::TDS_data to make
incident_cells concurrently callable but it was slow and memory-consuming
=> new incident_cells function which do not use cell::TDS_data
=> faster and lighter
- update_restricted_delaunay now uses parallel_for instead of parallel_do
(it was quite slow with the implicit oracle)
=> faster (but requires to fill a temporary vector)
2012-11-28 14:17:59 +01:00
Clement Jamin
11a2a1c68a
Merge from Mesh_3-improvements-GF
2012-11-21 17:49:59 +01:00
Clement Jamin
ab4d97c1e5
The global optimizers are now parallel (needs some intense testing now)
2012-11-21 16:16:47 +01:00
Clément Jamin
6429a45ff1
Bugfix
2012-11-20 15:17:39 +01:00
Clément Jamin
5ee10c8b63
Missing include + clean-up
2012-11-20 15:14:02 +01:00
Clément Jamin
b62c970343
New member function (is_locked_by_this_thread) + code refactoring
2012-11-20 15:13:05 +01:00
Clément Jamin
6c74e72c4a
Better protected/public sections + removed output committed by error
2012-11-20 15:11:31 +01:00
Clément Jamin
c243b06f81
Minor changes
2012-11-20 15:04:22 +01:00
Laurent Rineau
21dd336011
Add Triangulation_vertex_base_with_info_3 and
...
Triangulation_cell_base_with_info_3 in the io_signature system
2012-11-20 12:27:19 +01:00
Laurent Rineau
07f1a8381a
Extend the API to be compatible with the API of Polyhedral_mesh_domain_3
2012-11-20 11:25:34 +01:00
Laurent Rineau
4509b5bbe2
Merge branch 'master' into improvements
...
Conflicts:
Mesh_3/include/CGAL/Mesh_3/mesh_standard_facet_criteria.h
2012-11-14 12:17:29 +01:00
Laurent Rineau
88c6856789
Make CGAL_MESH_3_PROTECTION_DEBUG work
...
even if the surface id or curve id and not streamable.
2012-11-08 16:22:21 +00:00
Laurent Rineau
a9c16e922d
Allow not to define CGAL_MESH_3_NO_LONGER_CALLS_DO_INTERSECT_3
2012-11-08 10:31:50 +00:00
Laurent Rineau
cd62693554
Better fix of that assertion
2012-11-08 10:31:01 +00:00
Laurent Rineau
16ba507e79
Ignore silently consecutive identical points
2012-11-08 08:56:00 +00:00
Laurent Rineau
3e3f3057e7
Improve the assertions where minimal_size is used.
...
Before that patch, when special balls were around, some conditions tested
by previous assertions could legitimately be false.
2012-11-07 15:51:16 +00:00
Laurent Rineau
b112335034
Fix a wrong assertion.
...
If n==0, no new protecting ball will be inserted on the given curved
segment. No need to have dleft_frac>=1.
2012-11-06 14:04:55 +00:00
Laurent Rineau
bd6c940f6a
Make <CGAL/Mesh_vertex_base_3.h> compile on Linux.
2012-10-22 12:45:14 +00:00
Clément Jamin
68de26d823
With CGAL_COMPACT_MESH_VERTEX_CELL, the parallel version crashes sometimes. Can't figure out why...
2012-10-22 12:01:34 +00:00
Clément Jamin
57471ecc28
This "CGAL_UNDOABLE_INSERT_USE_MAP" thing was not used
2012-10-22 12:00:38 +00:00
Clément Jamin
4181e45730
Merge from Mesh_3-improvements-GF
2012-10-19 15:11:14 +00:00
Clément Jamin
2090a58eb3
Minor typos in comments
2012-10-19 14:30:35 +00:00
Clément Jamin
fde74e4a9a
There was a data race here
2012-10-19 14:29:30 +00:00
Clément Jamin
80ea1a7d33
This "CGAL_UNDOABLE_INSERT_USE_MAP" thing was not used
2012-10-19 14:27:16 +00:00
Clément Jamin
18938d6490
Bugfix: added a default value for Concurrency_tag
2012-10-18 09:27:11 +00:00
Clément Jamin
8a12c83451
The parallel version can now use safely FORCE_STRUCTURAL_FILTERING (optimization from GF-Improvements)
2012-10-17 16:33:37 +00:00
Clément Jamin
34a4620175
Fix
2012-10-17 15:49:06 +00:00
Clément Jamin
dbb1236912
Activated a few GF optimizations
2012-10-17 15:48:47 +00:00
Clément Jamin
160e87bf4f
Use Compact_mesh_cell_base_3 and Compact_mesh_vertex_base_3 in the parallel, if CGAL_COMPACT_MESH_VERTEX_CELL is defined
2012-10-17 15:35:44 +00:00
Clément Jamin
2d7265e0e4
The Compact_mesh_cell_base_3 can now be used by the parallel version and by the "lazy-refinement-queue" version
2012-10-17 15:35:03 +00:00
Laurent Rineau
1f1c9eaa33
Cherry-pick from Clément's branch:
...
| ------------------------------------------------------------------------
| r73014 | cjamin | 2012-10-17 15:12:52 +0200 (Wed, 17 Oct 2012) | 1 line
| Changed paths:
| M /branches/features/Mesh_3-parallel-cjamin/Mesh_3/include/CGAL/Mesh_cell_base_3.h
| M /branches/features/Mesh_3-parallel-cjamin/Mesh_3/include/CGAL/Mesh_vertex_base_3.h
|
| Added support for CGAL_INTRUSIVE_LIST in Mesh_cell_base_3 and Mesh_vertex_base_3
| ------------------------------------------------------------------------
2012-10-17 13:57:43 +00:00
Clément Jamin
b5bc300289
Added support for CGAL_INTRUSIVE_LIST in Mesh_cell_base_3 and Mesh_vertex_base_3
2012-10-17 13:12:52 +00:00
Clément Jamin
1ca7174e01
Merge from Mesh_3-improvements-GF
...
+ some bugfixes (most of them are related to the parallel version)
This version works (sequential and parallel) as long as the following macros are NOT defined:
* CGAL_COMPACT_MESH_VERTEX_CELL
* CGAL_INTRUSIVE_LIST
* FORCE_STRUCTURAL_FILTERING
2012-10-16 14:02:16 +00:00
Jane Tournois
304834b709
reactivate macro
2012-10-16 10:23:09 +00:00
Jane Tournois
824e8060fe
fix typo when CGAL_MESH_3_NEW_ROBUST_INTERSECTION_TRAITS is not defined
2012-10-16 09:59:44 +00:00
Jane Tournois
44f4a1a5c7
fix Construct_initial_points in Polyhedral_mesh_domain_3. In some numerically degenerate cases, it can be that there is no intersection point
2012-10-16 09:53:14 +00:00
Clément Jamin
4e1f8aa4f8
Merge from next
2012-10-15 08:28:01 +00:00
Clément Jamin
f37891baac
Minor changes (config, removed typedef...)
2012-10-12 15:01:55 +00:00
Clément Jamin
bd42c51cc5
- Added macro CHECK_AND_DISPLAY_THE_NUMBER_OF_BAD_ELEMENTS_IN_THE_END and SHOW_REMAINING_BAD_ELEMENT_IN_RED
...
- More output / enhanced output
- Some debug code (to be removed later)
2012-10-12 15:00:08 +00:00
Laurent Rineau
9a3998357f
svn merge --reintegrate \^/branches/features/CGAL_foundations-fix_missing_headers-lrineau
2012-10-10 12:39:36 +00:00
Laurent Rineau
f435be98fb
Fix an efficiency bug, when FT is not double.
...
dihedral_angle() returns a double. So values must be converted to double
ASAP.
2012-10-10 12:24:15 +00:00
Laurent Rineau
a53fd8c9c4
merge changes from next
2012-10-09 13:08:52 +00:00
Laurent Rineau
8743fa847b
Rename PROTECTION_DEBUG into CGAL_MESH_3_PROTECTION_DEBUG
2012-10-09 12:45:20 +00:00
Laurent Rineau
f0118a1311
Revert last commit (commited by error)
2012-10-09 09:28:37 +00:00
Laurent Rineau
648472bdac
After a run of detect_packages_license
2012-10-09 09:26:23 +00:00
Laurent Rineau
795c71fc9b
Fix headers of Mesh_2 and Mesh_3. All were missing #include.
...
I found out that way that <CGAL/Mesh_3/Refine_facets.h> and
<CGAL/Mesh_3/Protect_edges_sizing_field> were using global functions
instead of functors of the traits class.
Note also the funny bug that <CGAL/Regular_triangulation_cell_base_3.h> was
depending on <CGAL/Triangulation_vertex_base_3.h>!
2012-10-08 09:33:38 +00:00
Laurent Rineau
6b0bf6078c
BUGFIX: backup points attributes before the call to c3t3.remove_from_complex
...
C3t3::remove_from_complex modifies the in_dimension() of the vertex
(That may have been a bug.)
It is actually a merge from r72577 of
/branches/features/Mesh_3-experimental-GF/Mesh_3
2012-10-04 14:56:03 +00:00
Clément Jamin
2366fee1e1
Merge from next
2012-09-28 14:51:02 +00:00
Laurent Rineau
139b8ce637
Add and test functions to save/load a c3t3 in binary format
2012-09-21 13:12:58 +00:00
Laurent Rineau
787d19d6c3
Merge changes from next
2012-09-21 12:29:27 +00:00