7得票1回答
为什么 Golang 堆剖面中的“总 MB”比 top 命令中的“RES”少?

我有一个用go语言编写的服务,运行时需要占用6-7G内存(在top命令中显示为RES)。因此,我使用了pprof工具来尝试找出问题所在。 go tool pprof --pdf http://<service>/debug/pprof/heap > heap_prof.pd...

7得票2回答
Go(lang):如何使用PPROF堆剖析工具查找内存泄漏?

我试图使用pprof来验证内存泄漏。 请问有人能够解释一下如何阅读位于以下网址的堆剖面图: http://localhost:6060/debug/pprof/heap?debug=1 另外,启动go tool pprof http://localhost:6060/debug/pprof...

7得票1回答
什么原因会导致Go在runtime.pthread_cond_signal中花费大量时间?

我在Go语言中编写了一个多协程的基准测试,并使用Go工具pprof来分析如何优化我的代码。当我使用top10显示一些信息时,我得到了以下输出: Showing top 10 nodes out of 167 flat flat% sum% cum cum%...

10得票2回答
Golang:什么是etext?

我已经开始对我的Go1.2代码进行分析,而排在最前面的项目总是名为“etext”的东西。我已经搜索了很多资料,但除了它可能与Go例程中的调用深度有关之外,并没有找到太多信息。但是,我并没有使用任何Go例程,“etext”仍然占据了总执行时间的75%或更多。(pprof) top20 Tota...

9得票1回答
解读pprof堆图

当我使用pprof对go中的堆进行分析时,我得到了以下结果: 然而,我不清楚如何解释那个可视化图表。特别是:箭头旁边的记忆意味着_______,盒子里面的记忆意味着_______。所以当一个盒子有多个箭头指向它时,它的意思是_______,当它有多个箭头从它出发时,它的意思是______...

20得票2回答
Pprof和Golang - 如何解释结果?

我想在我的程序中使用pprof,但是我得到的结果与我阅读的文章(下面的链接)略有不同。我的结果如下表:(pprof) top10 1.65s of 1.72s total (95.93%) Showing top 10 nodes out of 114 (cum >= 0.01s) ...

17得票1回答
如何优化golang程序中运行时间最长的runtime.osyield和runtime.usleep?

我一直在优化代码以分析社交网络数据(在https://blog.golang.org/profiling-go-programs的帮助下),并已成功重构了大量缓慢的代码。 所有数据首先从数据库加载到内存中,然后从那里进行数据分析,似乎 CPU 受限(最大内存消耗 <10MB,CPU1 ...

11得票2回答
如何在Go程序中使用pprof

如何在Go程序中使用pprof? 有一个名为net/http/pprof的Go包,但我不知道如何使用它。 文档说要用go tool pprof http://localhost:6060/debug/pprof/heap命令,但是这样无法正常工作。 还有,下划线_代表什么意思? imp...

7得票1回答
展示在golang pprof中函数调用的计数

我使用以下命令进行程序的校对: go tool pprof http://localhost:6060/debug/pprof/profile 在Web模式下,我得到了这张图片: 如何显示函数调用的次数,而不是像golang博客上的同样图片中显示的在该函数内部花费的时间? 附注:...

11得票1回答
如何解读pprof输出?

我试图对一个使用大约256虚拟内存的Go语言应用程序进行分析(使用ps aux命令检查)。我尝试使用pprof包并查看哪些函数分配/消耗了大部分内存,但结果对我来说毫无意义。pprof top似乎只列出运行时函数。有人可以帮我理解这些数据吗? ps aux |grep android roo...