Subject: CGAL users discussion list
List archive
[cgal-discuss] Parallelism of the function AABB_tree::closest_point_and_primitive()
Chronological Thread
- From: Yana Nehme <>
- To:
- Subject: [cgal-discuss] Parallelism of the function AABB_tree::closest_point_and_primitive()
- Date: Thu, 5 Sep 2019 07:33:34 -0500 (CDT)
- Authentication-results: mail3-smtp-sop.national.inria.fr; spf=None ; spf=Fail ; spf=Pass
- Ironport-phdr: 9a23:DHb/9xMXo6jQCND1yIAl6mtUPXoX/o7sNwtQ0KIMzox0Lf/zrarrMEGX3/hxlliBBdydt6sezbOJ7Ou8BCQp2tWoiDg6aptCVhsI2409vjcLJ4q7M3D9N+PgdCcgHc5PBxdP9nC/NlVJSo6lPwWB6nK94iQPFRrhKAF7Ovr6GpLIj8Swyuu+54Dfbx9HiTagf79+Ngi6oAfTu8UZjoZvKrs6xwfUrHdPZ+lY335jK0iJnxb76Mew/Zpj/DpVtvk86cNOUrj0crohQ7BAAzsoL2465MvwtRneVgSP/WcTUn8XkhVTHQfI6gzxU4rrvSv7sup93zSaPdHzQLspVzmu87tnRRn1gyoBKjU38nzYitZogaxVoByvuR9xzZPbb46JO/RzZb/dcNEGSWZdQspdSzJND4WhZIUPFeoBOuNYopH/qFQUqxuxHxSnCvvxxT9Ig3/5w7Ax3uMhEA7c2gwvBcgCsHLKo9X1MacdT/u4zKjOzTXYdfxawDP96YjPchAnu/2MU6hwfNPXxEIyGQ3FiVCQppbkPzOTzukNtXKU4PF7WuKrlWErsR1+oj+qxsoql4LHhZoVx0jZ+Sh9xIs5P9O1RU1hbdOnEZZcrSCXOopwT8g/WW9nojw6xacDuZOjfCgF1pAnxxnHZvyBfIWE+BTjW/yKLjhjgHJqZqiziAq18Uil0uH8V8+030hWriddj9XBsnQA2wbd58WEUPdw/Uas1SyO2g3S8u1EJFo7lavfK54v2L4wkZ8TvFzDHyDsnkX5lrWadkM69eio7uTofK7rpp6aN49vkA7yK6Aum8y4AeQ+KAQOUXKb9fym1LL/5U35XKlKjvoun6bFv5DVP8AbqrekDA9UyYYs9wu/Dyy90NkDhnkGLFdFeAqdgITzOlHOJur4DfaljFi2njdr3aOOArq0CZrEKj3PkazqYK1mw09a0gs6i95FtLxODbRUEfv1UwfXudzdA1dtIgWyyqDhBdV426sfX3mGR6uIN6WUv0XetbFnGPWFeIJA4GW1EPMi/fO71SZoy29YRrGg2N4sUF79G/1nJ0uDZn+13oUAF3wD+w4vS+qshkfQDWcONUb3ZLo143QAMKzjDYrHQdnw0rrdmiGyFJdSayZNDVXeSC60JbXBYO8FbWepGuEkiiYNDOTzSok63FSqpQj8jbR9fLLZ
Hi,
I want to parallelise, with OpenMP, a matching process based on the AABB
Tree.
Indeed, we have 2 meshes: the reference ("m_poly_original") and the
distorded model ("m_poly_degrad" having a PointMap "pm_degrad"). For each
vertex of the distorted mesh, we compute its nearest 3D point on the surface
of the reference model using the AABB tree structure. For parallel
execution, we use the OpenMP parallel loop. The code is as follows:
auto original_faces = faces(m_poly_original);
FaceIterator orig_begin = original_faces.first;
FaceIterator orig_end = original_faces.second;
AABB_Tree tree(orig_begin, orig_end, m_poly_original);
tree.accelerate_distance_queries();
#pragma omp parallel for
for (int i = 0; i < (int)num_vertices(m_poly_degrad); i++)
{
Vertex_Descriptor vi(i);
// computes closest point and primitive id
Point_and_primitive_id pp =
tree.closest_point_and_primitive(get(pm_degrad, vi));
auto f_nearest = pp.second; // closest primitive id
}
However, the program crashes with a critical error detected c0000374.
Note that, I am using visual studio Express 2015 (openMp version 2.0) on
Windows 10.
It is possible to parallize the function
AABB_tree::closest_point_and_primitive()? How can I handle this kind of
problem?
Any help would be greatly appreciated.
Regards,
Yana Nehme
--
Sent from: http://cgal-discuss.949826.n4.nabble.com/
- [cgal-discuss] Parallelism of the function AABB_tree::closest_point_and_primitive(), Yana Nehme, 09/05/2019
- Re: [cgal-discuss] Parallelism of the function AABB_tree::closest_point_and_primitive(), Sebastien Loriot (GeometryFactory), 09/05/2019
- Re: [cgal-discuss] Parallelism of the function AABB_tree::closest_point_and_primitive(), Laurent Rineau (CGAL/GeometryFactory), 09/05/2019
- Re: [cgal-discuss] Parallelism of the function AABB_tree::closest_point_and_primitive(), Yana Nehme, 09/05/2019
Archive powered by MHonArc 2.6.18.