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

CI: Guard compile-time CPU features tests #21766

Merged
merged 1 commit into from
Jun 16, 2022

Conversation

seiko2plus
Copy link
Member

This guard protects against any sudden unexpected changes that may adversely
affect the compile-time SIMD features detection which could leave the SIMD code
inactivated. Until now we have faced two cases:

  1. Hardening the compile-time test files of Neon/ASIMD features without checking
    the sanity of the modification leading to disabling all optimizations on aarch64.
    see Neon detection on M1 needs fixing for 1.23.0 release #21747

  2. A sudden compiler upgrades by CI side on s390x that causes conflicts with the
    installed assembler leading to disabling the whole VX/E features, which made us
    merge SIMD code without testing it. Later, it was discovered that this code
    disrupted the NumPy build.
    see CI: Fix CI SIMD build on s390x #21750, BUG: Fix for npyv_orc_b8 and npyv_xnor_b8 for s390x (z13) #21748

@seiko2plus seiko2plus added component: CI component: SIMD Issues in SIMD (fast instruction sets) code or machinery labels Jun 15, 2022
  This guard protects against any sudden unexpected changes that may adversely
  affect the compile-time SIMD features detection which could leave the SIMD code
  inactivated. Until now we have faced two cases:

  1. Hardening the compile-time test files of Neon/ASIMD features without checking
     the sanity of the modification leading to disabling all optimizations on aarch64.
     see numpygh-21747

  2. A sudden compiler upgrades by CI side on s390x that causes conflicts with the
     installed assembler leading to disabling the whole VX/E features, which made us
     merge SIMD code without testing it. Later, it was discovered that this code
     disrupted the NumPy build.
     see numpygh-21750, numpygh-21748
@seiko2plus seiko2plus force-pushed the ci_guard_cpu_features branch 2 times, most recently from d82c8bd to 91faeaa Compare June 15, 2022 19:26
@seiko2plus seiko2plus marked this pull request as ready for review June 15, 2022 19:26
@mattip mattip merged commit f75ef3a into numpy:main Jun 16, 2022
@mattip
Copy link
Member

mattip commented Jun 16, 2022

Thanks @seiko2plus this should make it easier to see when compilation changes.

@seiko2plus seiko2plus deleted the ci_guard_cpu_features branch June 16, 2022 23:04
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
component: CI component: SIMD Issues in SIMD (fast instruction sets) code or machinery
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants