Изменить: работало, когда я добавил исполняемый файл в вызов pprof
Я пытаюсь профилировать простую программу с помощью профайлера из https://github.com/pkg/profile: и перейти к инструменту pprof.
package main
import "github.com/pkg/profile"
func main() {
defer profile.Start().Stop()
t1()
t2()
}
func t1() {
for i := 0; i < 9000000000; i++ {
x := i * 2
x += x
}
}
func t2() {
for i := 0; i < 1000000000; i++ {
x := i * 2
x += x
}
}
В примерах показана хорошая таблица со всеми вызываемыми функциями и временем, потраченным на каждую из них, но я вижу только 100% использование в течение нескольких секунд без дополнительной информации.
что я могу сделать, чтобы он выводил функции? это как-то связано со строкой «профилирование процессора отключено», которая выводится, когда код выполнен?
это то, что я использовал для генерации вывода:
./test
2016/12/16 11:04:39 profile: cpu profiling enabled, /tmp/profile176930291/cpu.pprof
2016/12/16 11:04:44 profile: cpu profiling disabled, /tmp/profile176930291/cpu.pprof
martin@martin-laptop:~/work/bin$ go tool pprof -text /tmp/profile176930291/cpu.pprof
4.90s of 4.90s total ( 100%)
flat flat% sum% cum cum%
4.90s 100% 100% 4.90s 100%