Как cublas обрабатывают NaNs? У функции cublas всегда обрабатывают NaN так, как только операция имеет определенное поведение IEEE 754 с NaN? Я особенно заинтересован в том, как они обрабатывают NaN в своей гемме и играли в гемм-процедуры, насколько я тестировал, результаты с NaN соответствуют стандарту, однако об этом не упоминается в документах cuda, поэтому я немного бит неуверен в этом, и правильно обрабатывать NaNs имеет решающее значение для правильности моих кодов.Cublas и NaN?
1
A
ответ
1
Графические процессоры CUDA должны придерживаться правил арифметики с плавающей запятой IEEE-754.
Не должно быть нестандартной обработки NaN. Это должно относиться ко всем библиотекам, использующим арифметику с плавающей запятой, и не должно меняться от функции к функции.
This document имеет большое обсуждение использования графических процессоров IEEE-754 с плавающей запятой.
Что особенно важно при обработке NaN, имеет решающее значение для вашего кода и почему? Как вы решаете эту проблему при использовании BLAS на хосте? Я не помню, чтобы видеть документацию о обработке NaN для любой из широко используемых реализаций BLAS. – njuffa