[vtk-developers] Checking SMP backend at runtime/compiletime?

Sean McBride sean at rogue-research.com
Fri Feb 19 12:11:29 EST 2016


On Tue, 9 Feb 2016 14:55:37 -0500, Berk Geveci said:

>A few comments:

Just back from vacation, so I missed the latter half of this thread...

>* The Simple backend of vtkSMPTools is only there for debugging. Helgrind
>produces lots of false positives when using TBB so I developed the Simple
>backend for use with Helgrind. It is not a production backend and pretty
>much sucks. Now that we haven an OpenMP backend that can be used with
>Helgrind, Simple must die. I don't see a reason to deprecate it first since
>it is there only for debugging. This is clearly documented in the PDF will
>pointed to.

Out of curiosity, did you try Thread Sanitizer?

Wouldn't keeping the Simple backend remain useful for debugging if these valuable tools (Hellgrind/TSan) don't work with the other backends?

>* For compilers that do not support OpenMP 3.1, one can (and should) use
>TBB. TBB is the better backend anyway so I recommend it over OpenMP.

Although open source clang is getting up to speed with its OpenMP support, Apple's fork of clang (that comes with Xcode) doesn't support OpenMP at all.  Of course, no one knows if it will be added or not.  Given that Apple is more interested in GCD and Swift, they may decide the burden of supporting OpenMP is not worth it to them.

>* We will not include TBB in VTK. It is an external dependency similarly to
>OpenGL & MPI. In the future, folks will have to get it or have OpenMP if
>they want any thread-level parallelism out of VTK. We need to discuss what
>"in the future" means.

Why not include it?  How is it different from how VTK includes NetCDF, HDF5, zlib, libpng, and a zillion other 3rd party libs?

With AppleClang not supporting OpenMP, and TBB not being included, it means VTK won't be buildable 'out of the box' on OS X anymore, if I understand all this correctly.  That would be a shame.

Cheers,

-- 
____________________________________________________________
Sean McBride, B. Eng                 sean at rogue-research.com
Rogue Research                        www.rogue-research.com 
Mac Software Developer              Montréal, Québec, Canada




More information about the vtk-developers mailing list