Skip to Content.
Sympa Menu

cgal-discuss - [cgal-discuss] Parallelism of the function AABB_tree::closest_point_and_primitive()

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/



Archive powered by MHonArc 2.6.18.

Top of Page