Evgeny_CDАрхитектор (28.07.2008 01:50, просмотров: 155) ответил Alex B. на ой, ну не надо уже про нехилые исследования.
А почему нельзя поступить так? Есть алгоритм на С. У него есть кучка переменных.
Обявляем структуру. Все переменные загоняем в структуру. Рефакторим код. Вместо обращения к переменнм - обращение к полям структуры.
Пишем простой кодогенератор, который после каждой строки с ; в конце добавляет свою строку - вызов некоего extreme_search. Она вставляется везде, во всех функциях и т.д.
Эта самая extreme_search просматривает значения полей, и обновляет массив - минимальные и максимальные значения поля.
Алгоритм прогоняется на всех возможных наборах данных. В режиме синтетического порта. Скорость упадет на пару порядков - и бог с ней.
Понятно, что дебуг функции обрамлены #ifdef DEBUG_EXTREME.
Можно оптимизировать метод. При написании кода кучками вызывать extreme_search в отношении той переменной, которой только что что-то присвоили.
Потяно, что начинат отладку надо с duble float, ну а далее двигаться в сторону уменьшения :)