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

Added support for dynamic dispatch for macOS/iOS/iPadOS on AArch64 #2152

Merged
3 commits merged into from May 24, 2024

Conversation

johnplatts
Copy link
Contributor

Added support for dynamic dispatch on macOS/iOS/iPadOS on AArch64 as some Apple Silicon CPU's have support for the ARM BF16 extension.

jan-wassenberg
jan-wassenberg previously approved these changes May 10, 2024
Copy link
Member

@jan-wassenberg jan-wassenberg left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for adding! It's great that we now support/detect Apple M2, I think that can handle NEON_BF16.

@jan-wassenberg
Copy link
Member

FYI internal iOS tests are failing due to svqxtnb_u16 apparently lacking an sve2 attribute. I am investigating.

@jan-wassenberg
Copy link
Member

@johnplatts would you please rebase this one?

@jan-wassenberg
Copy link
Member

Thanks for rebasing! Unfortunately internal CI is failing with a compiler crash for convert_test, but possibly also for all other targets.

clang: error: clang frontend command failed due to signal (use -v to see invocation)
Apple clang version 15.0.0 (clang-1500.3.9.4)
Target: arm64-apple-ios17.4

I think that corresponds to what we call HWY_COMPILER_CLANG=1600. Are you able to repro this? Should we disable dynamic dispatch, or more likely NEON_BF16, until even more recent compilers? FYI #2170 raises the minimum to 1600.

Copy link
Member

@jan-wassenberg jan-wassenberg left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for rebasing. Let's try again, but we might have to raise the minimum compiler for NEON_BF16 in case this still fails.

@jan-wassenberg
Copy link
Member

Indeed still breaking. I am patching the PR to disable runtime dispatch for Clang < 17, and fix the detection - Apple Clang 15.3 was mistakenly found to be 17 when it should be 16.

@copybara-service copybara-service bot closed this pull request by merging all changes into google:master in a3c41cb May 24, 2024
@jan-wassenberg
Copy link
Member

I have patched this PR as mentioned :)

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

Successfully merging this pull request may close these issues.

None yet

2 participants