Deutsch
Germany.ruФорумы → Архив Досок→ Программирование

C++ :)

20.08.12 22:20
Re: C++ :)
 
anly коренной житель
anly
в ответ AlexNek 20.08.12 20:27
В ответ на:
Тормоза вначале проанализируй каким то профайлером
по-моему с этими профайлерами еще надо научиться работать, чтоб они дали полезную инфу.
Я помню с baundschecker-ом возился и ничего полезного о тормозах от него не получил. А программа после внедрения в неё баундсчекера тормозила так что невозможно было работать.
Получил пару правильных указаний на утечки памяти, при том что baundschecker подозревал их сотни, и мне даже надоело проверять все эти места.
Короче после возни, с утечками памяти я стал бороться сплошным рефакторингом, т.е. все потенциально опасные места заменял на классы подобные auto_ptr.
А тормоза искал своим собственным профайлером, код которого торомозил программу не более чем на 5% в редких случаях (обычно на 1%) .
Недостатком (хотя может как раз и преимуществом) было то что код профайлера нужно внедрять в программу ручками. Т.е. сам выбираешь места время выполнения которых надо засечь (всего лишь одну строчку для каждого места). Методом половинного деления находишь проблемный код довольно быстро. А преимущество в том, что в явно нормальный код типа функций get/set ничего не внедряешь (мне кажется что boundschecker тормозил именно потому что внедрился везде где додумался. Хотя может ему компьютер просто помощней нужен был).
Проклят нарушающий межи ближнего своего (Втор.27:17)
 

Перейти на