1 parent 150990b commit b74bb47Copy full SHA for b74bb47
1 file changed
GPU/Common/GPUCommonDef.h
@@ -81,6 +81,14 @@
81
#define GPUCA_RTC_CONSTEXPR
82
#endif
83
84
+#if defined(GPUCA_DETERMINISTIC_MODE) && defined(__METAL__)
85
+ // The deterministic paths compute the transcendentals in double (see
86
+ // GPUCommonMath::SinCos). The emulated double is bit-exact for + - * / but
87
+ // its sin and cos are within 2 ulp of libm, not identical to it, so the
88
+ // results could not match the other backends.
89
+ #error "GPUCA_DETERMINISTIC_MODE is not supported on Metal"
90
+#endif
91
+
92
#ifndef GPUCA_DETERMINISTIC_CODE
93
#ifdef GPUCA_DETERMINISTIC_MODE
94
#define GPUCA_DETERMINISTIC_CODE(det, indet) det // In deterministic mode, take deterministic code path
0 commit comments