NonePprof is a golang package used to profile various runtime properties of golang's http server.
1 ответ

Go Profiling - Неверный файл

Я делаю профилирование в Go, используя github.com/pkg/profile, и он создает файл, когда я запускаю свой код, но результат исходит из примера кода страницы, как это будет проходить через мой код? заранее спасибо Код: package main import ( "fmt" "gith…
18 окт '18 в 22:50
0 ответов

Понимание и результат

Я имею go код, и я написал для него unittest. Тест длится 6,5 с и создает огромную нагрузку на процессор. Я запускаю тесты в Docker-контейнере, и его загрузка процессора достигает 400-500%. Я получил cpuprofile, и он показывает следующий результат: …
09 апр '18 в 08:01
0 ответов

golang pprof для кода библиотеки c

Я пытался профилировать мое приложение golang с помощью pprof, но кажется, что детали моего кода c (связанные как статическая библиотека) отсутствуют в выходном результате. график пламени На графике фреймов вы можете видеть, что все время, затрачива…
15 авг '17 в 05:54
1 ответ

Как оптимизировать программу golang, которая проводит больше всего времени в runtime.osyield и runtime.usleep

Я работал над оптимизацией кода, который анализирует данные социальных графов (с большой помощью https://blog.golang.org/profiling-go-programs), и я успешно переработал много медленного кода. Все данные загружаются в память из базы данных в первую о…
02 фев '16 в 13:41
1 ответ

Golang профилирующие тесты appengine

У меня возникает утечка памяти, связанная с получением больших файлов и их отправкой в ​​GCS. Попытка использовать pprof для профилирования использования памяти для моего кода appengine. Мои тесты используют appengine/aetest, и я могу вывести профил…
12 ноя '15 в 20:05
0 ответов

Golang pprof полный график вызовов

Я немного новичок в pprof, Я начал профилирование процессора и через некоторое время проверил топ25. Вот что я получил: Showing top 25 nodes out of 174 flat flat% sum% cum cum% 1.01mins 21.92% 21.92% 1.10mins 23.83% time.Time.AppendFormat 0.26mins 5…
11 апр '18 в 09:11
1 ответ

Каковы пунктирные / пунктирные линии в веб-выводе Go pprof?

В веб-выходе go tool pprofЧто такое пунктирные / пунктирные линии? Я нахожу некоторые упоминания о том, что он может представлять встроенные функции, но нет канонической ссылки.
25 мар '15 в 14:27
1 ответ

Как получить разбивку по продолжительности функции в го (профилирование)

Я пытаюсь профилировать сервер на основе go martini, который я написал, я хочу профилировать один запрос и получить полную разбивку функции с их продолжительностью выполнения. Я пытался поиграть с обоими runtime/pprof а также net/http/pprof но вывод…
08 дек '14 в 17:19
1 ответ

go tool pprof -inuse_space намного меньше, чем лучшие шоу linux

Моя программа работает в фоновом режиме. Я использую команду top Linux, это показывает 16g объем памяти. Но когда я хочу использовать идти pprof -inuse_space чтобы проверить точку зрения, я даю только 200M, Куда уходит другая память?
04 янв '19 в 08:51
2 ответа

Странное поведение времени.Since()

Я запускаю программу GO (1.9.2), и у меня есть код, подобный следующему: startTime := time.Now() ... ... fmt.Printf("%v (1) %v \n", user.uid, int64(time.Since(startTime))) fmt.Printf("%v (F) %v \n", user.uid, int64(time.Since(startTime))) (Два опера…
12 дек '17 в 12:55
1 ответ

golang tool pprof не работает должным образом - одинаковый прерывистый вывод независимо от цели профилирования

Ранее я без проблем использовал инструмент pprof, и он отлично работал - теперь я вижу вывод, подобный следующему, независимо от того, что я профилирую: приложение, профилируемое в этом примере, вероятно, выполняет более 40 вызовов функций, а еще бо…
16 ноя '15 в 13:17
1 ответ

Взрыв памяти Голанга: newdefer

У меня есть программа, которая прослушивает UDP для журнала трафика, пытается проанализировать его, а затем вставить его в Redis. При определенном уровне трафика память, кажется, "взрывается" (быстро увеличивается с нескольких сотен мегабайт до гига…
24 сен '13 в 12:27
1 ответ

Go(lang): Как использовать профиль кучи PPROF для поиска утечек памяти?

Я пытаюсь использовать pprof для проверки утечек памяти. Может ли кто-нибудь объяснить, как читать профиль кучи, который вы найдете на:http://localhost:6060/debug/pprof/heap?debug=1 Кроме того, это нормально, что, набрав web команда после запуска go…
29 сен '13 в 17:01
1 ответ

Почему "MOVQ 0x30(SP), DX" медленный?

Пожалуйста, смотрите следующую сессию pprof. В treesort.add, строка 42, есть сравнение int. Я думаю, что это составляет 64% всего процессорного времени. В случае бедствия операция "MOVQ 0x30(SP), DX". Почему это так медленно? File: treesort_bench.te…
07 сен '18 в 19:33
4 ответа

Не могу использовать инструмент go pprof с существующим сервером

У меня есть существующий http-сервер, который я хотел бы профилировать. Я включил _ "net/http/pprof"в мой импорт, и у меня уже работает http-сервер: router := createRouter() server := &http.Server { Addr: ":8080", Handler: router, ReadTimeout: 1…
31 май '15 в 18:09
0 ответов

Как отобразить символы в трассировке стека google-perftools heap profiler

Мы используем профилировщик кучи google-perftools в среде TDD. В конце мы получаем дамп кучи, который мы можем использовать pprof, чтобы увидеть горячие точки. Он показывает символы, но практически не дает информации о том, как достигается утечка в …
09 дек '13 в 17:34
1 ответ

Формат google-perftools/pprof с профилированием кучи

В пакете google-perftools есть утилита pprof. Полезно конвертировать файлы профиля из gp-perftools cpuprofiler и heapprofiler в красивые изображения: например, https://github.com/gperftools/gperftools/tree/master/doc/pprof-test-big.gif и https://git…
10 ноя '11 в 16:44
2 ответа

Как использовать pprof в программе Go

Как использовать pprof в программе Go? Существует пакет Go с именем net / http / pprof, но я не могу его использовать. В документе говорится go tool pprof http://localhost:6060/debug/pprof/heap, который не работает. И что означает следующее _? impor…
04 дек '12 в 09:06
1 ответ

exec.Command не регистрирует ошибку из собственного инструмента pprof Go

Вот мой код: cmd := exec.Command("go", "tool", "pprof", "-dot", "-lines", "http://google.com") out, err := cmd.Output() if err != nil { panic(err) } println(string(out)) Когда я запускаю точно такую ​​же команду в моей консоли, я вижу: $ go tool ppr…
02 июл '15 в 03:03
0 ответов

Могу ли я загрузить дамп кучи для запуска pprof позже?

Я пытаюсь найти способ хранения данных кучи из pprof, чтобы я мог поделиться ими, просмотреть их позже, присоединиться к проблемам и так далее. Мои попытки пока не сработали. Если я бегу go tool pprof http://my-server/debug/pprof/heap а потом беги w…
06 сен '16 в 15:56