![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| Dr4k0n |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 7 Регистрация: 24.7.2008 Репутация: нет Всего: нет |
Необходимо провести анализ проекта: выявить функции, которые отнимают наибольшее количество процессорного времени.
Какие для этого есть программы (и желательно чтоб они были интегрированы в Visual Studio)? |
|||
|
||||
| GoldFinch |
|
|||
![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2141 Регистрация: 30.11.2008 Репутация: 15 Всего: 26 |
оберни каждую функцию в переходник который меряет время ее выполнения и пишет его в лог
потом обработай данные лога чтобы получить усредненные значения |
|||
|
||||
| ISergeyN |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 59 Регистрация: 11.10.2008 Где: Україна Репутация: нет Всего: 2 |
VTune например |
|||
|
||||
| Dr4k0n |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 7 Регистрация: 24.7.2008 Репутация: нет Всего: нет |
Функций которые меня интересуют довольно много. А всего функций - просто дофигища. Так что руками я это делать не собираюсь.
|
|||
|
||||
| nerezus |
|
|||
![]() Вселенский отказник ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 3330 Регистрация: 15.6.2005 Репутация: 3 Всего: 43 |
||||
|
||||
| math64 |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2505 Регистрация: 12.4.2007 Репутация: 8 Всего: 72 |
Такие программы называются Profiler
|
|||
|
||||
| mes |
|
|||
|
любитель ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7954 Регистрация: 14.1.2006 Репутация: 144 Всего: 250 |
||||
|
||||
| GoldFinch |
|
|||
![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2141 Регистрация: 30.11.2008 Репутация: 15 Всего: 26 |
объясните на каком принципе работает профайлер
|
|||
|
||||
| nerezus |
|
|||
![]() Вселенский отказник ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 3330 Регистрация: 15.6.2005 Репутация: 3 Всего: 43 |
GoldFinch, на том же, что и отладчик.
|
|||
|
||||
| GoldFinch |
|
|||
![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2141 Регистрация: 30.11.2008 Репутация: 15 Всего: 26 |
nerezus, я вот чтото не знаю отладчиков которые умели бы такое делать
|
|||
|
||||
| vinter |
|
|||
![]() Explorer ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2735 Регистрация: 1.4.2006 Где: Н.Новгород Репутация: 13 Всего: 56 |
в VS2008 есть встроенный профайлер, еще хороший профайлер Compuware bounds checker, Но на 2008 студии я его так и не завел :( |
|||
|
||||
| xvr |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 7046 Регистрация: 28.8.2007 Где: Дублин, Ирландия Репутация: 60 Всего: 223 |
Принципа 2 (точнее 2 разновидности): 1. Периодически прерывает исполняемую программу (по таймеру) и запоминает IP, где прервал. Потом считает относительное количество каждого зарегистрированного IP. Где их больше - там и узкое место 2. Использует аппаратные performance counter'ы. Они настраиваются на счет нужных событий (в простейшем случае на те же тики процессора, но можно и что нибудь посложней - например на промах в кэш) и считают. По переполнению опять запоминается IP, далее как в п1. Есть еще разновидности, когда по переполнению одного performance counter'а регистрируется значение другого. |
|||
|
||||
| just_geek |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 309 Регистрация: 13.12.2007 Репутация: 2 Всего: 10 |
в 9.0 появилась поддержка 2008 студии, только где б его взять |
|||
|
||||
| vinter |
|
|||
![]() Explorer ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2735 Регистрация: 1.4.2006 Где: Н.Новгород Репутация: 13 Всего: 56 |
я 9.0 не смог поставить. |
|||
|
||||
| jonie |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5613 Регистрация: 21.8.2005 Где: Владимир Репутация: 15 Всего: 118 |
имхо ISergeyN написал про замечательный продукт IntelVTune, вы его как-то пропустили совсем... а зря.
-------------------- Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет... |
|||
|
||||
![]()
|
| Правила форума "С++:Общие вопросы" | |
|
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |