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

Berk Geveci berk.geveci at kitware.com
Mon Feb 22 11:25:37 EST 2016


David beat me to the punch :-) I expect that Apple with support OpenMP in
the next year or two, at least on the desktop. GCD does not handle SIMD
(vector instructions) and AFAIK the only other way Clang supports SIMD is
through auto-vectorization, which is limited. I don't see them supporting
only SIMD so I would guess that they will pull the whole OpenMP support.
However, if they don't, we can write a GCD backend. I have played with it a
bit in the past. The issue I ran into was that their abstraction makes
developing a thread local storage implementation somewhat tricky.

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

Good question. I don't know how/where we draw the line with these. OpenGL &
MPI are external dependencies whereas the ones you listed are included as
third party. I have a few reasons why I wouldn't want to include it:

* TBB license language may scare off some people as demonstrated by this
thread. Although the license is totally fine, I'd rather avoid answering
questions about the TBB license from those that do a license check in VTK.
* TBB is a fairly complex beast because of platforms/compilers it supports
(at fairly low level) and I'd rather avoid writing CMake files &
maintaining them

I don't have any strong attachment to this view however.

> Out of curiosity, did you try Thread Sanitizer?

Nope. We should probably try it sometime soon.

Best,
-berk


On Fri, Feb 19, 2016 at 12:50 PM, David Gobbi <david.gobbi at gmail.com> wrote:

> Actually, if OS X is focused on GCD, then I wonder how difficult it would
> be to make a GCD backend?
>
> _______________________________________________
> Powered by www.kitware.com
>
> Visit other Kitware open-source projects at
> http://www.kitware.com/opensource/opensource.html
>
> Search the list archives at: http://markmail.org/search/?q=vtk-developers
>
> Follow this link to subscribe/unsubscribe:
> http://public.kitware.com/mailman/listinfo/vtk-developers
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://public.kitware.com/pipermail/vtk-developers/attachments/20160222/7e162613/attachment-0001.html>


More information about the vtk-developers mailing list