|
Bugzilla – Full Text Bug Listing |
| Summary: | ugrep: build results depend on CPU | ||
|---|---|---|---|
| Product: | [openSUSE] openSUSE Tumbleweed | Reporter: | Bernhard Wiedemann <bwiedemann> |
| Component: | Other | Assignee: | Andreas Stieger <Andreas.Stieger> |
| Status: | NEW --- | QA Contact: | E-mail List <qa-bugs> |
| Severity: | Normal | ||
| Priority: | P5 - None | ||
| Version: | Current | ||
| Target Milestone: | --- | ||
| Hardware: | Other | ||
| OS: | All | ||
| Whiteboard: | |||
| Found By: | Development | Services Priority: | |
| Business Priority: | Blocker: | --- | |
| Marketing QA Status: | --- | IT Deployment: | --- |
| Bug Depends on: | |||
| Bug Blocks: | 1100677 | ||
|
Description
Bernhard Wiedemann
2024-04-14 03:10:29 UTC
I was under the impression that upstream implemented run-time detection correctly. Do you know where binary differences are?
The following are supposed to be selected at run-time:
lib/matcher.cpp
lib/matcher_avx2.cpp
lib/matcher_avx512bw.cpp
Also is the following constraint not forcing the correct CPU so that the binary result is always the same?
> #!BuildConstraint: hardware:cpu:flag x86-64-v3
Does the binary differ even when taking that into account?
I test these outside of OBS with osc build --vm-type=kvm --build-opt=--vm-custom-opt="-cpu kvm64" which seems to ignore the BuildConstraint. However, there is still some build-time detection going on. Especially the part in configure.ac line 113 still depends on if the build machine CPU has AVX512 or not. If there is indeed runtime-detection, you just need to add a force-avx configure option. |