You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
SME1 strmm implementation sometimes leaves output unchanged #5763
Interesting. Perhaps the dummy implementation is being invoked for some reason? For what it's worth, the same test is also failing on Ampere Altra machines in NixOS's CI (although I can't verify that it's for the same reason): https://hydra.nixos.org/build/325315833
I can try to double-check exactly which implementation in being invoked later.
Some kind of miscompilation apparently - when I put a single printf in the dummy code path, STRMM suddenly returns the correct result (and doesn't print what I put in the printf either) ...
Weird, this works fine under MacOS but is indeed broken on Asahi Linux. I'll try to look into it later today.
That's strange, for me it's broken on both macOS and Asahi (I only switched to testing on Asahi so I could use rr). Although I only ever tested 0.3.31 on macOS, not HEAD - testing now. I can also reproduce it with HEAD on macOS. It could also be a compiler version difference, since I'm using nixpkgs' clang 21 rather than macOS's clang 17.
Compiler probably plays a role, but I've only had time for a quick test on the two M1 minis that are made available through the GCC Compile Farm. Now it's family function instead of BLAS function for me until late in the evening
Turns out the error "only" affected DYNAMIC_ARCH builds, cause was a quick return inserted in the wrong place that had replaced the intended target of the check for an SME-capable cpu. Same silly bug was also present in the SSYMM code path
Activity
martin-frbg commentedon Apr 19, 2026
Hmm, I don't think an M1 should be running the SME code at all ?
Liamolucko commentedon Apr 19, 2026
Interesting. Perhaps the dummy implementation is being invoked for some reason? For what it's worth, the same test is also failing on Ampere Altra machines in NixOS's CI (although I can't verify that it's for the same reason): https://hydra.nixos.org/build/325315833
I can try to double-check exactly which implementation in being invoked later.
martin-frbg commentedon Apr 19, 2026
Weird, this works fine under MacOS but is indeed broken on Asahi Linux. I'll try to look into it later today.
martin-frbg commentedon Apr 19, 2026
Some kind of miscompilation apparently - when I put a single printf in the dummy code path, STRMM suddenly returns the correct result (and doesn't print what I put in the printf either) ...
Liamolucko commentedon Apr 19, 2026
That's strange, for me it's broken on both macOS and Asahi (I only switched to testing on Asahi so I could use
rr).Although I only ever tested 0.3.31 on macOS, not HEAD - testing now.I can also reproduce it with HEAD on macOS. It could also be a compiler version difference, since I'm using nixpkgs' clang 21 rather than macOS's clang 17.martin-frbg commentedon Apr 19, 2026
Compiler probably plays a role, but I've only had time for a quick test on the two M1 minis that are made available through the GCC Compile Farm. Now it's family function instead of BLAS function for me until late in the evening
dasergatskov commentedon Apr 19, 2026
I can confirm this on Raspberry Pi5 / Ubuntu 26.04 with both clang and gcc.
martin-frbg commentedon Apr 22, 2026
Turns out the error "only" affected DYNAMIC_ARCH builds, cause was a quick return inserted in the wrong place that had replaced the intended target of the check for an SME-capable cpu. Same silly bug was also present in the SSYMM code path
openblas: 0.3.32 -> 0.3.33
openblas: 0.3.32 -> 0.3.33
openblas: 0.3.32 -> 0.3.33
openblas: 0.3.32 -> 0.3.33
openblas: 0.3.32 -> 0.3.33