[Bugfix][CPU] Make the Apple Silicon BF16 probe fall back instead of raising (#51627)

Signed-off-by: Kush Zingade <kush.zingade@gmail.com>
This commit is contained in:
Kush Zingade
2026-08-11 21:35:07 +08:00
committed by GitHub
parent 6c95a641e9
commit 78e7fdd1ab
+8 -5
View File
@@ -54,12 +54,15 @@ class CpuPlatform(Platform):
elif self.get_cpu_architecture() == CpuArchEnum.ARM and sys.platform.startswith(
"darwin"
):
if (
subprocess.check_output(
["sysctl -n hw.optional.arm.FEAT_BF16"], shell=True
).strip()
# sysctl exits non-zero when the OID is absent, so check_output would
# raise instead of letting the fp16/fp32 fallback below run.
bf16 = (
subprocess.run(
["sysctl", "-n", "hw.optional.arm.FEAT_BF16"], capture_output=True
).stdout.strip()
== b"1"
):
)
if bf16:
return [torch.bfloat16, torch.float16, torch.float32]
return [torch.float16, torch.float32]
elif self.get_cpu_architecture() == CpuArchEnum.RISCV: