Денормализованные числа с плавающей запятой: какие операции вызывают дорогостоящие особые случаи?
Денормализованные числа с плавающей запятой требуют дорогостоящей специальной обработки в некоторых операциях (сложение, умножение). Хотя это хорошо известно, мне кажется, что на многие сравнительно простые операции такое наказание не повлияет. Мне не удалось найти хороший обзор того, что "безопасно" на разных платформах, и мне было интересно, знают ли другие здесь больше. Меня особенно интересует ответ для x86-64 и CUDA/PTX для следующих классов операций.
- Сравнение с плавающей запятой
- Абсолютная величина
- Операции округления (ceil, floor, trunc, round)
- Преобразование (одинарное ↔ двойное, вещественное ↔ целое)