GalSim-developers / GalSim

The modular galaxy image simulation toolkit. Documentation:
http://galsim-developers.github.io/GalSim/
Other
223 stars 105 forks source link

Fix fftw on new Mac GHA machines #1288

Closed rmjarvis closed 4 months ago

rmjarvis commented 4 months ago

The new MacOS runners on GitHub actions seem to have recently turned on "System Integrity Protection". This means the way we had been setting the FFTW include and link directories didn't work right anymore. We now need to explicitly set FFTW_DIR when doing pip install.

jmeyers314 commented 4 months ago

Yep. I think the location homebrew installs to is different for MacOS x86 and MacOS ARM too if we ever want to enable both in CI.

rmjarvis commented 4 months ago

Thanks Josh!

jmeyers314 commented 4 months ago

Also note that the system clang on the GHA runners (both x86 and ARM) don't include OpenMP (https://github.com/GalSim-developers/GalSim/actions/runs/8911049524/job/24471556168#step:13:513).

I don't know if there's a "pro" side to disabling omp for CI, but to compile with it you can grab llvm from homebrew (which is the right thing to do for pypi uploads I think). See bits around https://github.com/jmeyers314/batoid/blob/releases/0.6/.github/workflows/wheels.yml#L90-L97.

rmjarvis commented 4 months ago

Yeah, we should include the llvm download when we do the arm wheels.

jmeyers314 commented 4 months ago

Yeah, we should include the llvm download when we do the arm wheels.

I can't actually tell from the GHA logs, but I suspect we should do this for the x86 wheels too. I.e., I suspect the MacOS wheels currently on PyPI are single-thread only.