![]() |
Добавлено: 2011-03-31 21:46:34 30.03.2011 ВЫШЛА ВЕРСИЯ 1.2c PUBLIC с поддержкой многопоточности |
Raul Зарегистрирован(а): 17.03.2010 Сообщений: 101 (просмотреть) |
- Исправлен дистрибутив. - Бета-тестирование завершено. 20.11.2010 ВЫШЛО ОБНОВЛЕНИЕ ВЕРСИИ 1.2c BETA PUBLIC с поддержкой многопоточности - Документирован метод clear(), обеспечена его корректная работа. - Поправлены разделы 1.1, 1.2 и 4.3 документации. 28.09.2010 ВЫШЛА ОБНОВЛЕННАЯ ВЕРСИЯ 1.2c BETA PUBLIC с поддержкой многопоточности - Тест производительности для Intel Core i7. - Программа Arifexp и тестовый файл Arifrand выполняют операции ~, @(abs), U(unsign), M(bits), U(exbits). - Усовершенствован метод оценки времени в программе Arifexp. - ИСПРАВЛЕНО: Некорректная реализация cBigAbs() и setabs(). - ИСПРАВЛЕНО: Некорректная реализация cBigExBits() и setexbits(), неправильный пример в описании cBigExBits(). - ИСПРАВЛЕНО: Ошибка распределения памяти в методах преоразования числа в строку и строки в число. - ИСПРАВЛЕНО: Неверный результат cBigCompl() и setcompl() для числа из 0 слов. - ИСПРАВЛЕНО: Неверный результат +, -, ^, &, | для числа из 0 слов и машинного числа. - ИСПРАВЛЕНО: Метод loword() может выдать неверный результат для числа из 0 слов. - ИСПРАВЛЕНО: Порча памяти методами tab() и smp() для числа из 0 слов. - ИСПРАВЛЕНО: Ошибка assert в отладочном режиме при возведении в степень по модулю базы из 0 слов. - ИСПРАВЛЕНО: Оценка времени сложения и вычитания в программе Arifexp. - Обновлена оценка времени деления. 28.07.2010 ВЫШЛА ВЕРСИЯ 1.2c BETA PUBLIC с поддержкой многопоточности - Реализована поддержка локальной памяти потока в классе cBigTemp, что сделало версию 1.2c в многопоточном режиме такой же быстрой, как предыдущую версию 1.2b в однопоточном режиме. См. описание макро EXTHREAD_LOCAL в разделе 3. - Заголовочный файл Exthread.h автоматически определяет макро EXTHREAD_LOCAL для трансляторов Borland/Microsoft и GNU g++. - Заголовочный файл Cthr.h для поддержки многопоточности в приложениях. - ИЗМЕНЕНИЕ: Макро _CBIGNUM_MT включено по умолчанию. - ИЗМЕНЕНИЕ: Исключены нереентерабельные статические методы lastdivmod(), lastrootrm(), кроме случая отключения макро _CBIGNUM_MT. Замените их на реентерабельные операции cBigDivMod(), cBigSqrtRm() или методы setdivmod(), setsqrtrm(). - ИЗМЕНЕНИЕ: Исключен нереентерабельный метод toatmp(), если только не отключено макро _CBIGNUM_MT или установлено макро _CBIGNUM_TOATMP. Замените его на метод toa(). - Преобразование строка-число и вычисление квадратного корня оптимизированы для макро _CBIGNUM_MT. - Умножение, деление, модуль, степень и возведение в степень по модулю оптимизированы для чисел, кратных большой степени двойки (~100 и выше) под макро _CBIGNUM_MT. - Возведение в степень по модулю оптимизировано для модуля, кратного большой степени двойки (~100 и выше). - Специальный код для ~10-кратного ускорения деления и модуля чисел с одним значащим словом. - В несколько раз ускорено выполнение методов bits() и exbits(). - Добавлена опция -par n в программу Arifexp для организации вывода данных в параллельном потоке под Windows. - Программа Arifexp теперь не выводит результат проверки, если он совпадает с исходными данными. - Работа командного файла Arifrand ускорена в 2-3 раза за счет вывода данных в параллельном потоке и отказа от вывода проверочных данных. |
Ответить | Цитировать |