[Cython] [Re] OpenMP thread private variable not recognized (bug report + discussion)
Dave Hirschfeld
dave.hirschfeld at gmail.com
Wed Aug 13 08:53:01 CEST 2014
Sturla Molden <sturla.molden at ...> writes:
>
> "Leon Bottou" <leon at ...> wrote:
>
> > I am making heavy uses of OpenBlas which also uses OpenMP.
> > Using the same queue manager prevents lots of CPU provisioning problem.
> > Using multiple queue managers in the same code does not work as well
because
> > they are not aware of what the other one is doing.
>
> Normally OpenBLAS is built without OpenMP. Also, OpenMP is not fork safe
> (cf. multiprocessing) but OpenBLAS' own threadpool is. So it is recommended
> to build OpenBLAS without OpenMP dependency.
>
> That is: If you build OpenBLAS with OpenMP, numpy.dot will hang if used
> together with multiprocessing.
>
> Sturla
>
>
Just wanting to clarify that it's only the GNU OpenMP implementation that
isn't fork-safe? AFAIK the intel OpenMP runtime is and will at some stage be
available in the master branch of clang.
-Dave
More information about the cython-devel
mailing list