pprof++: A Go Profiler with Hardware Performance Monitoring
摘要
Golang是Uber数千个后端服务的命脉,在数百万个CPU核心上运行。了解我们的CPU瓶颈是至关重要的,这既是为了减少服务延迟,也是为了使我们的计算机群高效。Uber运营的规模需要对代码和微架构的影响有深入的了解。
虽然与其他几种语言相比,内置的Go剖析器比没有剖析器要好,但Go中事实上的CPU剖析器在基于Linux的系统上(也可能在其他操作系统上)有严重的局限性,并且缺乏许多[1, 2, 3, 4]充分理解CPU瓶颈所需的细节。
欢迎在评论区写下你对这篇文章的看法。