Система Turbo Profiler фирмы Borland | страница 9



Глава 1. Пример работы с профилировщиком

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


Каковы же преимущества использования описываемого нами орудия? Во-первых профилирование Ваших программ может повысить их производительность. Во-вторых профилирование может усилить вашу способность создания эффективных программ. И, наконец, профилирование, как и отладка, может стать неотъемлемым элементом цикла создания программного обеспечения.


В этой главе мы продемонстрируем Вам пример того, каким образом можно извлечь пользу из применения профилировщика, и как в дальнейшем профилирование может сэкономить Вам часы во время поиска строк программы, расточительно использующих ресурсы компьютера. Вы научитесь применять профилировщик для того чтобы:


* обнаруживать где и на что ваша программа расходует время;


* создавать аннотированный листинг исходного текста Вашей программы и статистический отчет о профилировании;


* запоминать статистические данные, полученные в результате профилирования и затем, после перерыва, возвращаться к работе с этими данными;


* анализировать статистику профилирования и исходный текст Вашей программы, находящиеся, в соседних окнах.


Примечание: Примеры этой главы основаны на колонке Джона Бентли в журнале Communications of the ACM (июль

1987), которая называется «Жемчужины программирования»

(«Programming Pearls»).


Примечание: Все примеры были опробованы на машине с 286 процессором и видеоадаптером Hercules.


Примеры в данной главе основываются на поиске и распечатке всех простых чисел, находящихся в диапазоне от 1 до 1000. Вспомним, что число является простым если оно делится только на 1 и само на себя, очевидно, что оно должно быть нечетным, так как любое четное число делится на 2 и, следовательно, не является простым. Для того чтобы определить, является ли данное число простым, необходимо проверить не является ли какое либо простое число, меньшее данного, его делителем, а так же проверить не делится ли рассматриваемое число на какое — нибудь целое, большее двух первых простых чисел 2 и 3.