Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Sporadic AVX2 failures on macOS CI #473

Closed
jakirkham opened this issue Oct 6, 2023 · 6 comments · Fixed by #479, #483 or #482
Closed

Sporadic AVX2 failures on macOS CI #473

jakirkham opened this issue Oct 6, 2023 · 6 comments · Fixed by #479, #483 or #482

Comments

@jakirkham
Copy link
Member

Have recently started seeing issues where macOS CI builds try to use AVX2 instructions even though they are likely unavailable on CI. However this is sporadic as it doesn't always occur in the same builds or Python versions. Rerunning CI seems to sometimes fix the issue. Maybe we just need to disable AVX2 in CI to fix this.

@jakirkham
Copy link
Member Author

Think this is related to this change: #428

Looking at the config, think the DISABLE_NUMCODECS_AVX2 environment variable is getting overridden in the macOS case. Guessing we either need to include that explicitly in the macOS case or configure the macOS case to extend (and not override) flags generally set

numcodecs/pyproject.toml

Lines 115 to 121 in 680d020

[tool.cibuildwheel]
environment = { DISABLE_NUMCODECS_AVX2=1 }
[tool.cibuildwheel.macos]
environment = { MACOSX_DEPLOYMENT_TARGET=10.9, CFLAGS="$CFLAGS -Wno-implicit-function-declaration" }
[[tool.cibuildwheel.overrides]]
select = "*-macosx_arm64"
environment = { DISABLE_NUMCODECS_SSE2=1 }

@jakirkham
Copy link
Member Author

cc @psobolewskiPhD (in case you have ideas here)

@psobolewskiPhD
Copy link
Contributor

I understood that tool.cibuildwheel applied globally, but maybe not...
...and maybe not all runners have AVX2, hence the issue?
I'll make a PR to add DISABLE_NUMCODECS_AVX2=1 under tool.cibuildwheel.macos...

@jakirkham
Copy link
Member Author

FWIW am not certain either. Though that seemed like a plausible working theory that explained the behavior so far

Sounds good. Thanks Peter! 🙏

We can give that a try and see how things go 🙂

@jakirkham
Copy link
Member Author

Reopening as this issue is coming up in recent wheel builds: #474 (comment)

@jakirkham
Copy link
Member Author

Looking at these errors, it appears to be macOS ARM that is failing. So maybe the override needs this option too

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment