Имеется непростая задача — программа слишком "тормозит". То есть достаточно очевидно, что можно существенно ускорить выполнение тщательно поптимизацией кода в определённом месте. Однако навскидку сложно сказать где имеено тратися наибольшее время — то есть за оптимизацию чего браться в первую очередь
Не посоветуете ли какие — нить утилиты/методикии, что бы вывить наиболее узкие места приводящие к тормозам ?
А>Не посоветуете ли какие — нить утилиты/методикии, что бы вывить наиболее узкие места приводящие к тормозам ?
1) Просмотреть программу профайлером — он укажет, какие места больше всего времени требуют.
2) Если есть какие-нить долгоиграющие алгоритмы, на которых строится все приложение — просмотреть их, попытаться их соптимизировать (хотя наверное это слишком общая рекомендация )
3) Проветить код на то, не тратится ли время на создание временных объектов там, где они не нужны — например передача объектов в функцию по значению и т.п.
Здравствуйте, Аноним, Вы писали:
А>Имеется непростая задача — программа слишком "тормозит". То есть достаточно очевидно, что можно существенно ускорить выполнение тщательно поптимизацией кода в определённом месте. Однако навскидку сложно сказать где имеено тратися наибольшее время — то есть за оптимизацию чего браться в первую очередь
А>Не посоветуете ли какие — нить утилиты/методикии, что бы вывить наиболее узкие места приводящие к тормозам ?
Для этих целей предназначены профайлеры. Скажи, под какой компилятор/среду разработки все это тебе надо, тогда можно будет предложить что-нибудь конкретное. Или воспользуйся поиском по сайту.
задавали аналогичный вопрос и народ упоминал разные профайлеры.
Re[2]: Исследование эффективности С++ программ
От:
Аноним
Дата:
14.02.05 08:31
Оценка:
Здравствуйте, Bell, Вы писали:
B>Здравствуйте, Аноним, Вы писали:
А>>Имеется непростая задача — программа слишком "тормозит". То есть достаточно очевидно, что можно существенно ускорить выполнение тщательно поптимизацией кода в определённом месте. Однако навскидку сложно сказать где имеено тратися наибольшее время — то есть за оптимизацию чего браться в первую очередь
А>>Не посоветуете ли какие — нить утилиты/методикии, что бы вывить наиболее узкие места приводящие к тормозам ?
B>Для этих целей предназначены профайлеры. Скажи, под какой компилятор/среду разработки все это тебе надо, тогда можно будет предложить что-нибудь конкретное. Или воспользуйся поиском по сайту.
Пользуюсь VC6. Поставил галочку enable profile, но всё равно Build->Profile задизэйблено...
А>Пользуюсь VC6. Поставил галочку enable profile, но всё равно Build->Profile задизэйблено...
А какая VC6 у тебя стоит?
Я точно не помню, но кажется профайлер идет в "Enterprise Edition".
В общем проверь, что у тебя профайлер установлен.
Re[4]: Исследование эффективности С++ программ
От:
Аноним
Дата:
14.02.05 08:47
Оценка:
Здравствуйте, bkat, Вы писали:
B>Здравствуйте, Аноним, Вы писали:
А>>Пользуюсь VC6. Поставил галочку enable profile, но всё равно Build->Profile задизэйблено...
B>А какая VC6 у тебя стоит? B>Я точно не помню, но кажется профайлер идет в "Enterprise Edition". B>В общем проверь, что у тебя профайлер установлен.
Здравствуйте, Bell, Вы писали:
B>Здравствуйте, Аноним, Вы писали:
А>>Пользуюсь VC6. Поставил галочку enable profile, но всё равно Build->Profile задизэйблено...
B>запускай regedit, иди на HKEY_CURRENT_USER\Software\Microsoft\DevStudio\6.0\General и добавь DWORD-параметр ProfilerInstalled со значением 1.
B>Подробнее можно посмотреть здесь