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

Add AVX512 support #675

Merged
merged 1 commit into from
Oct 8, 2024
Merged

Add AVX512 support #675

merged 1 commit into from
Oct 8, 2024

Conversation

tpkessler
Copy link
Contributor

Many modern CPUs support AVX512 with 512 bit wide vector instructions. Currently, terra only enables AVX extensions (256 bit) for its vector type. This PR enables basic AVX512 features if the host CPU supports it.

Advantages

This potentially speeds up computations with the vector type by factor of 2 as twice as many instructions can be handled at the same time.

Disadvantages

None as the old code path (AVX only) is used if the CPU does not support all required AVX512 instruction sets.

@elliottslaughter
Copy link
Member

This seems reasonable to me, let's just make sure CI passes. Thanks!

@tpkessler
Copy link
Contributor Author

I forgot to run clang-format before the commit. This is now fixed. Can you restart the CI please?

@elliottslaughter elliottslaughter merged commit 3678cc9 into terralang:master Oct 8, 2024
45 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants