conda-forge / mumps-feedstock

A conda-smithy repository for mumps.
BSD 3-Clause "New" or "Revised" License
5 stars 23 forks source link

build Windows with OpenMP #61

Open markendr opened 4 years ago

markendr commented 4 years ago

I was hoping to get OpenMP working with the win64 conda-forge mumps module:

mumps 5.1.2 h8933c1f_1001 conda-forge

The verbose output for the mumps module shows the build is without OMP. If I manually build with compiler openmp flags the output shows #OMP = 8. The openmp build runs 2-3x faster for larger problems on my 4-core laptop, so it is definitely worthwhile.

I am working on a PR to enable OpenMP but find the mumps-feedstock is using NMake Makefiles and flang for win64, rather than MinGW Makefiles and gfortran. (Not sure why I don't get the flang build when I use conda install mumps?)

I can build the module from the feedstock using flang, but flang gives command failed due to signal if I add the -mp openmp compile flag. I have not found any relevant LLVM/MSVC openmp support info/limitiations, but clang works fine for an C openmp code.

The linux build with openmp is fine.

Should I do a PR for a MinGW/gfortran build, or any suggestions on getting OpenMP working with flang?

moorepants commented 3 years ago

If you can get OpenMP with the current windows build setup that is fine. I don't know about flang + OpenMP, try searching if any other feedstocks use OpenMP on windows with flang.