[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