diff --git a/test/test_ops.py b/test/test_ops.py index e8844b47422..cde58ab7973 100644 --- a/test/test_ops.py +++ b/test/test_ops.py @@ -1,5 +1,6 @@ import math import os +import platform import sys import time from abc import ABC, abstractmethod @@ -1889,6 +1890,12 @@ def test_iou(self, device, dtype, fmt): pytest.xfail( "xyxyxyxy format with float32 on CUDA has expected failure due to floating-point precision errors in format conversion" ) + elif platform.machine() in ("arm64", "aarch64"): + # Same root cause as the macOS case above: the NEON/Sleef sin/cos + # implementation used on arm64 Linux rounds slightly differently + # than the AVX backend used on x86_64, which is enough to flip + # the Graham scan's ordering in this format round-trip. + atol = 0.5 else: atol = 1e-4 else: