问题标签 [pprof]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
go - go pprof heap profile vs top mem_usage
我正在运行 go 应用程序并使用 pprof 来获取它的堆配置文件,如下所示:
结果,我得到了这个:Showing nodes accounting for 507.98MB, 99.41% of 510.98MB total
。但我不知道它首先从哪里得到这个 507.98MB。当我使用 检查当前内存使用情况top
时,它显示我的应用程序仅使用 200MB 内存(top
命令结果中的 RES 值)。有人可以解释堆配置文件显示的总 in_use 内存和给出的 mem_usage 之间有什么区别top
吗?
performance - Why is "MOVQ 0x30(SP), DX" slow?
Please see the following pprof session. In the treesort.add, line 42, there's an int comparison. I think it accounts for 64% of all cpu time. In disasm the operation is "MOVQ 0x30(SP), DX". Why is it so slow?
#xA;go - 如何在 CGO tcp 服务器上进行基准测试?
我使用 CGO 完成了一个 TCP 服务器。现在我想做一些基准分析和优化。
Go 和 C 之间的连接流程如下:
并且服务器只能在 docker 容器中运行。
我尝试使用 pprof 分析与真实用户 I/O 的几秒钟连接,但它什么也没给我:
因此我想知道 pprof 是否只能分析纯 Go 程序?我怎样才能正确地对这样的程序进行基准测试?
go - 我可以在 pprof 下运行一些东西并传递命令行参数吗?
我有一个 go 二进制文件,它使用 cobra 作为子命令。每个子命令都有自己的标志。我希望能够为具有一组特定参数的命令创建 CPU 配置文件,例如:
但是,如果我尝试运行它,如下所示:
我收到以下错误:
如果我尝试引用整个命令,它也不起作用。有没有办法go tool pprof
传递其他命令行参数?
编辑:这就是我试图描述的方式:
go - 在启用 pkg/profile 的情况下运行 go 时如何获取样本?
我的主块中有以下内容:
cmd
cobra 子命令在哪里。我做了一个 go build,然后我运行二进制文件。我可以看到它生成了一个pprof
文件:
然后我试图分析它,使用:
但是当 pprof 打开时,我看到了这个:
如果有帮助,我正在go version go1.11 linux/amd64
运行Ubuntu 16.04.5 LTS
. 不确定这是否重要,但我正在尝试检查 DigitalOcean 液滴上的 pprof 输出。
有什么我做错了吗?谢谢!
go - 如何解释 go pprof/mutex 显示等待解锁?
我正在优化 Go 程序的性能。在查看互斥量分析时,我得到了
代码片段是
我不明白的是:
- 为什么互斥量分析显示只有前 1 个有
flat
时间,其余的都是0
? - 如果显示正在等待,
Lock
则可能意味着计算时间过长,但是显示等待中是什么意思Unlock
?
go - go tool pprof -inuse_space 比 linux top 显示小很多
我的程序在后台运行。我使用 linux top 命令,它显示16g
内存。但是当我想使用 gopprof -inuse_space
检查点时,我只给出200M
. 其他的记忆去哪儿了?
debugging - 如何分析这个 Golang cpu pprof 快照?
程序启动后大约 10 分钟会出现此问题。CPU 成本 300%。有什么问题?stackoverflow 不支持 .svg 图片。请下载上传到 github 的 .svg 文件。
go - golang pprof 堆计数含义
描述
我尝试使用 pprof 来分析我的程序,并且我正在使用
在浏览器中访问:
然后我将有以下页面:
每次我尝试刷新此页面时,框中的数字都会不断增加!
当我点击链接时:http://ip:port/debug/pprof/heap?debug=1
我将看到以下内容:
这里的4个数字:
意思是 inuse_objects: inuse_space [all_objects: alloc_space],对吗?
问题
方框中的这两个数字实际上是什么意思?
“堆计数”与 有什么关系inuse_objects
?