专栏首页Golang语言社区windows下 查看golang gc 信息

windows下 查看golang gc 信息

Windows:

1[Bat/CMD 下]
2set GOGCTRACE=1
3set GODEBUG=gctrace=1
4存在 log 的方法:  xxx.exe 2> gctrace.log

Linux:

1GODEBUG=gctrace=1 ./程序名 

or (此处以修正)

1GODEBUG=gctrace=1 ./程序名 2> gctrace.log

說明:

1gc158: 7+16+0 ms 36 -> 20 MB 1566204 -> 1234896 (12302166-11067270)
2objects 32205 pointer lookups (31817 size, 388 addr)

=> 7+16+0 is the mark+sweep+cleanup times. => 36 -> 20 mb is free 16 mb

設定:

1GODEBUG:
2gctrace=1,
3schedtrace=100,
4scheddetail=1
 1垃圾回收信息
 2gc 1 @2.104s 0%: 0.018+1.3+0.076 ms clock, 0.054+0.35/1.0/3.0+0.23 ms cpu, 4->4->3 MB, 5 MB goal, 4 P。
 31 表示第一次执行
 4@2.104s 表示程序执行的总时间
 50% 垃圾回收时间占用的百分比,(不知道和谁比?难道是和上面的程序执行总时间,这样比较感觉没意义)
 60.018+1.3+0.076 ms clock 垃圾回收的时间,分别为STW(stop-the-world)清扫的时间, 并发标记和扫描的时间,STW标记的时间
 70.054+0.35/1.0/3.0+0.23 ms cpu 垃圾回收占用cpu时间
 84->4->3 MB 堆的大小,gc后堆的大小,存活堆的大小
 95 MB goal 整体堆的大小
104 P 使用的处理器数量
11系统内存回收信息,这个很直白,看单词就知道大概意思了
12scvg0: inuse: 426, idle: 0, sys: 427, released: 0, consumed: 427 (MB)
13426 使用多少M内存
140 剩下要清除的内存
15427 系统映射的内存
160 释放的系统内存
17427 申请的系统内存

本文分享自微信公众号 - Golang语言社区(Golangweb)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2018-06-07

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 【翻译】为什么 goroutine 的栈内存无穷大?

    一些 Go 语言的新学习者总是会对 goroutine 栈内存占用大小感到非常好奇。这一般是由于程序员进行无限的函数循环调用导致的。为了说明这个问题,请思考以下...

    李海彬
  • Go 语言内存管理(二):Go 内存管理

    了解操作系统对内存的管理机制后,现在可以去看下 Go 语言是如何利用底层的这些特性来优化内存的。Go 的内存管理基本上参考 tcmalloc 来实现的,只是细节...

    李海彬
  • Buffered channel、slice和mutex的简单性能测试

    测试代码: package main import ( "fmt" "runtime" "sync" "time" ) co...

    李海彬
  • nginx内存池

    2、防止出错:统一在生命周期结束时通过销毁内存池释放所有资源,避免中间异常返回忘记释放资源,造成资源泄漏。

    用户1215536
  • 物联网常用协议:MQTT、CoAP、LwM2M、HTTP、LoRaWAN和NB-IoT

    物联网,即物的互联网,属于互联网的一部分。物联网将互联网的基础设施作为信息传递的载体,即现代的物联网产品一定是“物”通过某种方式接入了互联网,而“物”通过互联网...

    不脱发的程序猿
  • 视频加密是否可实现H5页面加密

    点量小芹DolitQin520
  • 图像分割(三) 之基于FPGA的局部自适应分割

    图像分割(三) 之基于FPGA的局部自适应分割 在前面讲的自适应分割的原理如下: ? 由公式可以看出,窗口的分割值是对图像进行开窗,并计算窗口内的像素均值和标准...

    瓜大三哥
  • Python: 去掉字符串开头、结尾或者中间不想要的字符

    ①Strip()方法用于删除开始或结尾的字符。lstrip()|rstirp()分别从左右执行删除操作。默认情况下会删除空白或者换行符,也可以指定其他字符。

    于小勇
  • 要把应用装集装箱,总共分几步

    其实把应用装进集装箱不是真正的目的,真正的目的是让应用能够通过标准化的创建,配置,部署,不区分底层资源,能够快速运行起来。以一种模块化的方式进行协同、自动化的工...

    Rainbond开源
  • go语言性能建议

    songleo

扫码关注云+社区

领取腾讯云代金券