Что точно делает профилирование C++ (инструменты перфекта CPU Google) мера?

Быстрое решение состоит в том, чтобы изменить разрешения для следующего:

  • /var/www/html/wordpress/wp-content
  • /var/www/html/wordpress/wp-content/plugins

Изменить на 775.

После установки не забудьте изменить его обратно на разрешения по умолчанию ..: D

8
задан osgx 27 December 2012 в 17:34
поделиться

3 ответа

Из моих комментариев:

Цифры, полученные от вашего профилировщика, говорят о том, что программа должна быть примерно на 40% быстрее без операторов печати. ​​

Однако время выполнения остается почти то же самое.

Очевидно, одно из измерений должно быть неверным. Это означает, что вам нужно делать больше и лучше измерений.

Сначала я предлагаю начать с другого простого инструмента: команды времени. Это должно дать вам приблизительное представление о том, на что вы тратите время.

Если результаты все еще не окончательны, вам нужен лучший тестовый пример:

  • Используйте более крупную задачу
  • Сделайте разминку перед измерением. Сделайте несколько циклов и затем начните любое измерение (в том же процессе).

Тиристан: Все зависит от пользователя. Я думаю, что то, что я делаю, довольно просто ... Означает ли что-нибудь тот факт, что файл все время открыт?

Это означает, что профилировщик ошибается. Your internal measurements and time show you do not gain anything from disabling output. Google Perf Tools says you should. Who's wrong?

3
ответ дан 5 December 2019 в 23:17
поделиться

_write$UNIX2003 is probably referring to the write POSIX system call, which outputs to the terminal. I/O is very slow compared to almost anything else, so it makes sense that your program is spending a lot of time there if you are writing a fair bit of output.

I'm not sure why your program wouldn't speed up when you remove the output, but I can't really make a guess on only the information you've given. It would be nice to see some of the code, or even the perftools output when the cout statement is removed.

1
ответ дан 5 December 2019 в 23:17
поделиться

Google perftools собирает образцы стека вызовов, поэтому вам нужно получить некоторое представление о них.

Согласно документу, вы можете отображать граф вызовов с детализацией по операторам или адресам. Это должно сказать вам то, что вам нужно знать.

1
ответ дан 5 December 2019 в 23:17
поделиться
Другие вопросы по тегам:

Похожие вопросы: