Access 2002

Назначение тестов


Помните, что назначение наших тестов заключается в выборе более быстрого из двух методов решения задачи, а не в сверхточном хронометрировании. Полученные нами коэффициенты (чем они меньше, тем лучше) зависят от конкретных тестов и конфигурации системы, но, тем не менее, они прекрасно иллюстрируют целесообразность предлагаемых нами усовершенствований.

Одни результаты сравнения  сильно зависят от проведенных тестов, другие же практически не зависят. Так, Testl2, демонстрирующий разницу между использованием целочисленного и обычного деления, едва ли допускает много вариантов исполнения. И как бы вы ни переписывали его код, результат мало изменится. А вот Test, сравнивающий скорость работы функции 11 f С) и оператора Iг, может дать разные результаты в зависимости от того, что вы делаете в случае получения положительного и отрицательного результатов проверки условия.

Далее все приведенные ы иллюстрируются тестами из класса Optiimzi ng- Tests.

В большинстве случаев мы не приводим здесь кода тестовых примеров. Наша задача — описать ситуацию, а уж исследовать ее на практике вы можете самостоятельно, открыв базу данных CH13.MDB. Тем более что мы включили в эту базу данных только тесты, а реальный программный код ваших приложений будет совсем иным. Все наши тестовые процедуры носят имя TestNa (более медленное решение) и TestNb (более быстрое решение), где N — это номер теста. Например, тест 5 составляют процедуры Test5a и Test5b.

Результатом каждого из наших тестов является процентное соотношение времени выполнения более быстрого и более медленного варианта кода. Например, если медленный тест занял 1000 миллисекунд, а быстрый — 250 миллисекунд, то в качестве результата мы получим 25%. На вашем компьютере эти значения могут быть и, скорее всего, будут иными. Мы привели их только для сравнения, а не как точную оценку эффективности оптимизации.

Комментарии закрыты