-
-
Notifications
You must be signed in to change notification settings - Fork 163
Description
Hi,
We ship openPMD-api as binary wheels for python users containing c-blosc for postprocessing tasks.
With ARM being strong with the Apple M1 processors, we want to build universal2
wheels that contain both x86_64 and arm64 code. We produce them on macOS 11.0 x86_64 GitHub actions runners.
Multi-arch builds for macOS are very easy with CMake, we just need to set:
export CMAKE_OSX_ARCHITECTURES="arm64;x86_64"
Unfortunately, c-blosc
SSE2 breaks the build for SSE2. The only alternative I have is to disable SSE2 acceleration altogether at the moment, which means that x86_64
code in the universal binary will not be accelerated either. Is there maybe a way to make this more flexible? :)
Refs.: https://developer.apple.com/documentation/apple-silicon/building-a-universal-macos-binary
X-ref: openPMD/openPMD-api#1233