Система Turbo Profiler фирмы Borland | страница 40
Stop (Останов) — Выполнение программы прекращается и управление передается в среду системы Turbo Profiler. В этот момент Вы можете посмотреть собранные статистические данные, а затем опять возобновить выполнение программы.
По умолчанию, система Turbo Profiler подсчитывает сколько раз, за время выполнения программы, управление попадает на входную точку каждой «области» и сколько времени отнимает выполнение каждой «области». Вы можете изменить действия профилировщика, которые он производит при входе в «область», установив соответствующим образом параметр Operation (Режим работы) в блоке диалога Areas Options (Параметры «области»), который можно вызвать из локальных меню окна Module (Модуль) и Areas («Области»).
Когда Вы помечаете «области» в своей программе перед тем, как начать получение ее профиля, Вам необходимо рассмотреть следующие вопросы:
* Для какого количества «областей» должна собираться статистика?
* Профиль каких участков программы должен быть получен?
* Какие действия должны выполняться в каждой из помеченных «областей»?
Какой уровень детализации Вам следует выбрать?
Для начала Вам необходимо решить как много информации Вы хотите получить в результате профилирования. При этом нужно учитывать длину Вашей программы, а также то, сколько времени занимает ее выполнение.
* Для небольшой программы у Вас возможно возникнет желание получить статистическую информацию для каждой выполняемой строки, что является максимально возможным уровнем детализации.
* Для большой программы необходима меньшая степень подробности, скорее всего достаточно подсчитать лишь количество времени, затрачиваемого на выполнение каждой из процедур.
Понятие «большая» является довольно расплывчатым, но очевидно, что нужно принимать во внимание такие характеристики программы, как количество модулей в исходном тексте, количество подпрограмм и количество строк.
Если Ваш исходный текст состоит из 10 000 строк, содержащихся в 10 модулях, то было бы вполне разумно профилировать их по одиночке и в режиме активного анализа. (Ведь Ваша программа разбита на отдельные функциональные модули, не так ли?)
С другой стороны, если размер Вашей программы составляет менее 100 строк и Вам необходим ее детальный анализ, то Вы, возможно, захотите получить статистические данные для каждой из строк.
Если время выполнения Вашей программы не превышает пяти секунд, то Вы получите более объективные результаты профилирования, если выполните эту программу несколько раз и затем усредните полученные данные (установите число выполнений Вашей программы при помощи команды Statistics| Profiling command (Статистика| Команды профилирования). Если Ваша программа, даже без учета времени, расходующегося на получение статистических данных, выполняется в течение часа, будьте осторожны при пометке «областей», если Вы пометите их слишком много, то время выполнения Вашей программы может стать неприемлемо большим.