Подписанная 128-битная библиотека типа плавающей точки данных, с 64 эффективными битами точности (против 53 для встроенного двойного типа) и 64-битным экспонентом (против 11 для парных). С большей точностью и гораздо большим диапазоном, квадроциклы особенно полезны при работе с очень большими или очень маленькими значениями, такими как в вероятностных моделях. Принятие большей фиксированной точности, а не произвольного типа точности (например, BigDecimal Java) означает, что, хотя все еще медленнее, чем встроенная арифметика, наказание является лишь на порядок величины или менее и, таким образом, все еще возможно во многих математически тяжелых приложений. Например, на ноутбуке Intel Core i5-2410M миллиард умножений занимает 17 секунд с двойными значениями, 135 секунд с значениями четырехъядерных с помощью перегруженного оператора и всего 76 секунд с использованием метода Умножения (более высокие накладные расходы на й из-за плохой логики хедлайнера .Net компилятора/JIT). Для сравнения, широко используемое обходной путь для умножения подтека и переполнения, суммирования логаритмов, занимает 130 секунд. Помимо того, что они быстрее и точнее, чем арифметика журнала, квадрациклы также упрощают код, устраняя необходимость помнить, какие переменные являются log'd, и преобразовывать их туда и обратно в значения log'd. Четырехместная библиотека написана на C-коде (включая исходный код) и целевых показателями .Net 4.0; он также должен быть легко портативным для .Net 2.0 и аналогичных языков (таких как Java) с простыми изменениями.
история версии
- Версия 1.0 размещено на 2011-06-15
Первоначальный релиз
Подробная информация о программе
- Категории: Развития > Компоненты и библиотеки
- Издателя: Jeff Pasternack
- Лицензии: Бесплатный
- Цена: N/A
- Версия: 1.0
- Платформы: windows