cl_khr_fp64
- официальное расширение точности с плавающей запятой Khronos. Требуется, чтобы арифметика соответствовала стандарту IEEE 754-2008, а также поддерживался полный диапазон векторных типов OpenCL и функций стандартной библиотеки.
Изначально AMD реализовала только часть того, что требуется для расширения cl_khr_fp64
, поэтому они выпустили собственное расширение cl_amd_fp64
для поддержки двойной точности на своем оборудовании GPU. Когда он впервые появился, диапазон поддержки был очень ограниченным (возможно, только +, -, * с нестандартным поведением округления IIRC), но он постепенно расширялся с последующими выпусками SDK и новыми аппаратными ревизиями. Они перечисляют, что поддерживается в их примечаниях к выпуску, если моя память работает правильно.
Я давно не следил за их развитием, поэтому не уверен, почему то, что вы видите, может происходить. Если у вас установлена последняя версия драйвера и потокового SDK, я бы посоветовал собрать случай с репро и отправить с ними отчет об ошибке. Возможно, вы используете что-то, что они не поддерживают или не гарантируют результаты, но также может быть, что вы нашли ошибку.