Skip to Content.
Sympa Menu

cgal-discuss - Re: [cgal-discuss] Parallel calling CGAL with OpenMP

Subject: CGAL users discussion list

List archive

Re: [cgal-discuss] Parallel calling CGAL with OpenMP


Chronological Thread 
  • From: Sebastien Loriot <>
  • To:
  • Subject: Re: [cgal-discuss] Parallel calling CGAL with OpenMP
  • Date: Wed, 20 Mar 2024 09:00:50 +0100
  • Authentication-results: mail2-smtp-roc.national.inria.fr; spf=None ; spf=Pass ; spf=None
  • Ironport-data: A9a23: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
  • Ironport-hdrordr: A9a23:O/xTea9mTCTwWBDFH11uk+D7I+orL9Y04lQ7vn2ZOiYlFPBw8P re4MjztCWE9Qr5PUtLpTnuAtjjfZqxz+8P3WBVB8bZYOCEghrMEGgB1/qA/9SIIUSXnY5gPO VbAtBD4bXLbGSS5vyKhzVQfexQueVvvJrY4ds2DE0AceipUcxdBstCZTpz23cZeDV7
  • Ironport-phdr: A9a23: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 kltNTOCTLVU3eMISA==
  • Ironport-sdr: 65fa97b4_zs8zrhTfHn7nGUypdVhr1DqSyMrRyw64hGT+AyGJEnZTREM 4utpv+vW/xaImF53ytpgYDzDVgJOuGCC21wawZA==

Your issue is probably different. It comes from the lazy kernel that is not well suited for cascaded operations.

We have started to write a new kernel that could overcome that here:
https://github.com/CGAL/cgal/pull/4495

but we have been missing time to finish. We will try to give it another
shot and see if we can finish it this time.

Best,

Sebastien.

On 3/19/24 11:00, Nicklas SB Karlsson wrote:
Also have performance problem but for me it is with 2D polygons. Not sure
what take a lot execution but might be because
of plenty of allocation and de allocation of memory.

Nicklas Karlsson


mån 2024-03-18 klockan 21:58 +0100 skrev Biye Yang:
Hi, all:

I want to compute the interactions between lots of 3D polyhedrons using CGAL.
It becomes low efficient when facing
hundreds of objects. So I tried to parallel the code with the simple
multi-thread OpenMP. But the segmentation fault
always occur. Here is the code of the simple case:

#pragma omp_parallel_for
 for(int i=0; i<Object.size(); i++)
{
      CGSurfaceMesh smesh_insect;
      bool valid_intersect =
CGAL::Polygon_mesh_processing::corefine_and_compute_intersection(Object[i],
TargertObject, smesh_insect);
}

I don't know how to figure that out. And do you have any suggestions on
improving efficiency when handling hundreds of
3D intersections using CGAL?
Thanks a lot!

Best wishes,
Daye

--
You are currently subscribed to cgal-discuss.
To unsubscribe or access the archives, go to
https://sympa.inria.fr/sympa/info/cgal-discuss







Archive powered by MHonArc 2.6.19+.

Top of Page