[Numpy-discussion] Cython-based OpenMP-accelerated quartic polynomial solver

Sturla Molden sturla.molden at gmail.com
Wed Sep 30 18:50:08 EDT 2015


On 30/09/15 15:57, Nathan Goldbaum wrote:

> Basically, just try to compile a simple OpenMP test program in a
> subprocess. If that succeeds, then great, we can add -fopenmp as a
> compilation flag. If not, don't do that.

Unless you use GCC on Linux, it will be more complex than that. I.e. do 
you need -fopenmp, -openmp or /openmp? And which libraries do you need 
to link, if any? Link GOMP? Link some other OpenMP runtime libraries? 
Link pthreads? There is three different pthread implementations to 
choose between on Windows, depending on GCC version (MinGW, MinGW-w64,
and Cygwin need different pthread libs for OpenMP). It gets messy. The 
only clean way is to add the correct flags and libraries into the 
compiler classes in numpy.distutils, and then let distutils and bento 
query those.


STurla









More information about the NumPy-Discussion mailing list