《性能优化》golang构建时,添加-buildmode=pie是否会对性能造成影响?

y27988 · · 1465 次点击 · 开始浏览    置顶
这是一个创建于 的主题,其中的信息可能已经有所发展或是发生改变。

由于我最近刚开始接触golang这门语言,还没有大量时间去深入研究了解golang的特性和机制,目前接到一个任务,要求测试golang在buildmode=pie时性能损失的问题。 我自己写的测试的逻辑是,大量调用CGO内的函数、变量,和非main包的函数、变量,以及main包其他文件的函数、变量,循环执行多次,分别获取开始和结束时间计算用时,但是没有发现明显的性能损失。(性能损失在1%-2%) 疑惑点: 1. buildmode=pie 会影响go的性能吗? 2. 主要是从哪些方面影响?比如用到哪些特性时,buildmode=pie和buildmode=exe的性能差距比较大? 3. 我发现使用buildmode=exe --ldflags '-linkmode=external -extld=gcc -extldflags "-pie"' 也可以使最终文件具有pie的二进制特征,而且大量测试上性能相较于buildmode=pie有微乎其微(0.5%)的提升。 4. go语言目前的性能优化都是从哪些方面入手的?有没有从构建选项上入手获得优化的案例? 还请帮忙解惑,或者有没有相关资料介绍一下。

有疑问加站长微信联系(非本文作者)

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

1465 次点击  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传