Система Turbo Profiler фирмы Borland
- Название:Система Turbo Profiler фирмы Borland
- Автор:
- Жанр:
- Издательство:неизвестно
- Год:неизвестен
- ISBN:нет данных
- Рейтинг:
- Избранное:Добавить в избранное
-
Отзывы:
-
Ваша оценка:
Система Turbo Profiler фирмы Borland краткое содержание
Система Turbo Profiler фирмы Borland - читать онлайн бесплатно полную версию (весь текст целиком)
Интервал:
Закладка:
Важное замечание: При выборе количества собираемых данных Вы вынуждены принимать какие-то компромиссные решения. Так как, чем более обширную и подробную информацию собирает система Turbo Profiler, тем медленнее происходит процесс получения профиля, и тем большее количество оперативной памяти требуется для собранной статистики.
Если же Вы уже получили какие-то статистические данные, то при помощи ряда команд, задаваемых в окнах, в которых находится отчет о профилировании, Вы можете временно исключить из рассмотрения некоторые из них. (смотрите соответствующий раздел данного руководства где изложена более подробная информация о фильтрации изображаемой статистики).
Получение профиля Вашей программы.
Как только Вы пометили «области», приступайте к получению профиля Вашей программы. Вы можете сохранить результаты профилирования с помощью команды Statistics| Save (Статистика| Сохранить). В результате выполнения этой команды статистика сохраняется в файле с расширением TFS (Turbo Profiler Statistics (Статистика системы Turbo Profiler). Если Вы хотите сохранить результаты нескольких сеансов профилирования, лучше всего было бы назвать файлы, в которых будут храниться эти результаты, используя некоторые соглашения, позволяющие однозначно определять в каком из файлов находятся данные каждого из сеансов (например, RUN.TFS, RUN2.TFS и т. д.). Подобные названия файлов делают более простым последующее сравнение этих данных.
Примечание: Заключение о том, что какой-либо профиль заслуживает сохранения, можно сделать лишь ознакомившись с содержанием нескольких окон Execution Profile (Профиль выполнения).
После того как Вы сохраните статистические данные в файле с рассширением. TFS, Вы можете приступить к их изучению путем просмотра информации, находящейся в различных окнах отчета о профилировании (profile report windows), причем для наилучшего понимания значения этих данных Вы имеете возможность выводить их на экран в отфильтрованном и отсортированном различными способами виде. При этом Вы не утратите каких-либо маркеров или статистических данных, так как в любое время Вы можете воспроизвести их первоначальный вид (просто загрузив информацию в профилировщик из соответствующего файла с расширением. TFS). Общее правило таково: если на получение профиля программы было затрачено большое количество времени, то следует сохранить этот профиль, за исключением, конечно, того случая, когда Вы абсолютно уверены в том, что впоследствии он Вам не понадобится.
Что Вы пытаетесь понять в ходе процесса профилирования?
Обычно программисты пользуются профилировщиком для получения ответа на один или несколько из следующих вопросов:
* Насколько эффективен данный алгоритм? (Тестирование алгоритма).
* Делает ли данная программа то, что по моему мнению она должна делать? Все ли части данной программы работоспособны?
(Верификация и тестирование)
* Сколько времени затрачивается на выполнение каждой из подпрограмм? В течение какого промежутка времени Ваша программа использует те или иные ресурсы? (Подсчет времен выполнения и контроль за использованием ресурсов (resource monitoring)
* Какова структура данной программы? (Анализ структуры программы).
Следующая таблица связывает между собой цель профилирования и тип собираемой Вами информации, необходимой для достижения данной цели.
Таблица 3.1 Способы применения профилировщика
Цель профилирования — Тип собираемой информации
Тестирование алгоритма — Информация о количестве выполнений строк; Отчет о динамике вызовов подпрограмм.
Верификация и тестирование — Информация о количестве выполнений подпрограмм, (возможно, и строк тоже); Отчет о динамике вызовов подпрограмм.
Подсчет времен выполнения и контроль за использованием ресурсов — Временная статистика; количественная статистика; данные об использовании прерываний; данные об обращениях к файлам; информация об использовании оверлеев.
Анализ структуры программы — Отчет о динамике вызовов подпрограмм; данные об обращениях к файлам; профиль выполнения (включающий временную и количественную статистику); данные об использовании прерываний; информация об использовании оверлеев.
Тестирование алгоритма.
В случае анализа алгоритма Ваше внимание сосредотачивается на небольшом количестве подпрограмм, поэтому информация о количестве выполнений строк программы имеет большее значение, чем временные данные. Вам необходимо произвести следующие действия:
1. Выделить алгоритм и все поддерживающие подпрограммы, пометив их как «области».
2. Убедиться в том, что Вы установили маркеры «области» на каждой строке всех подпрограмм, реализующих рассматриваемый алгоритм.
Примеры Главы 1 демонстрируют анализ алгоритма, причем этот анализ проводится в основном с точки зрения времени выполнения.
Верификация и тестирование программ.
В случае верификации и тестирования программ информация о том, сколько раз выполнялись строки программы, имеет более важное значение, чем временные данные. Но так как в процессе верификации и тестирования Вы исследуете программу в целом, то Вам необходимо видеть, как различные части программы работают во взаимодействии друг с другом.
Получение профиля программы в процессе прогона типичных тестов позволяет выявить участки программы, которые выполняются небольшое число раз, либо вообще не выполняются. Например, посредством изучения путей вызова в окне Callers (Вызывающие программы) и вывода на печать листинга исходного текста (содержащего количественную характеристику) из окна Module (Модуль), Вы можете удостовериться в том, что каждая строчка Вашей программы была действительно выполнена.
Поскольку в процессе тестирования и верификации программ Вы работаете с крупными фрагментами исходного текста, то Вы не нуждаетесь в таком количестве подробностей, как в случае анализа алгоритма. Тем не менее и в этом случае бывает полезным иметь информацию о том, сколько раз выполнялась та или иная подпрограмма. И в ситуации, когда Вы хотели бы протестировать ряд подпрограмм, составляющих некоторую иерархическую структуру, данные о количестве выполнений могут помочь Вам убедиться в том, что в процессе выполнения программы каждая из ветвей операторов типа переключатель и условных операторов была пройдена хотя бы один раз.
Подсчет времени выполнения и контроль за использованием ресурсов.
При подсчете временной статистики для программы большого размера с целью выявления участков, замедляющих ее работу, Вам, как правило, не требуется подсчитывать эти данные на уровне строк. При подсчете временных соотношений для процесса выполнения программы Вам необходимо знать две вещи:
Читать дальшеИнтервал:
Закладка: