Тут показані розбіжності між вибраною ревізією та поточною версією сторінки.
— |
profiling [2016/12/17 23:15] (поточний) wombat створено |
||
---|---|---|---|
Рядок 1: | Рядок 1: | ||
+ | ====== Профілювання програм ====== | ||
+ | |||
+ | ====== GNU gprof ====== | ||
+ | |||
+ | Типова послідовність дій для отримання профілю програми за допомогою [[https://sourceware.org/binutils/docs/gprof/ | gprof]] така: | ||
+ | |||
+ | - [[https://sourceware.org/binutils/docs/gprof/Compiling.html | Компіляція]] програми в режимі профілювання | ||
+ | - [[https://sourceware.org/binutils/docs/gprof/Executing.html | Виконання]] програми | ||
+ | - [[https://sourceware.org/binutils/docs/gprof/Invoking.html | Аналіз]] статистики виконання програми | ||
+ | |||
+ | === Компіляція в режимі профілювання === | ||
+ | |||
+ | cc -g -c myprog.c utils.c -pg | ||
+ | cc -o myprog myprog.o utils.o -pg | ||
+ | |||
+ | Якщо використовується ситсема збирання CMake, здійснювати конфігурацію перед збиранням програми потрібно таким чином: | ||
+ | |||
+ | CXXFLAGS="-pg" cmake ../ProgramSource/ | ||
+ | |||
+ | === Аналіз профілю === | ||
+ | |||
+ | gprof -p Program.bin gmon.out | ||
+ | |||