Я уверен, вы уже видели это раньше.
Я считаю полезным различать две разные цели:
Измерение того, сколько времени занимают разные вещи, чтобы вы могли сделать презентацию.В рамках этой презентации вы можете сказать что-то вроде: «Похоже, что процедура frob отнимает слишком много времени или вызывается слишком много раз, , предлагая , мы пытаемся ускорить это илиназывайте это меньше. "
Определение точных строк кода или инструкций, которые 1) не нужны и 2) заслуживают исправления в том смысле, что они сохранятхорошая доля времени выполнения.
Я подозреваю, что общая цель - последняя.Но для этого измерение является очень косвенным подходом.Вместо этого вы можете воспользоваться тем, что, если что-то тратит достаточно времени, чтобы на него посмотреть, вы можете просто поймать это , сделав снимки состояния программы.
Итак, вы 'не измерения, чтобы найти то, что занимает время.Тот факт, что на это требуется время, однозначно показывает, что не предполагает .
Zoom - профилировщик , который работает таким образом.Так же как и LTProf .Я построил один раз, но, честно говоря, я думаю, что ручной метод, в то время как больше работы, более эффективен , потому что он заставляет меня задуматься о том, почему программа делает то, что делает.