πŸ‡ΊπŸ‡¦ Go performance channel
1.5K subscribers
39 photos
400 links
Go performance, runtime, concurrency.

Talks, blogposts and open source projects for gophers.

Not affiliated with Go team.

https://go-perf.dev

(mail: [email protected] / @olegkovalov)
Download Telegram
From today series of #golang proposals regarding changes in runtime, compiler and all this strange stuff will be posted here.

The first one in the series: Create an undefined internal calling convention (by Austin Clements) https://github.com/golang/proposal/blob/master/design/27539-internal-abi.md
#golang performance tooling tip:

go tool pprof -base=https://old.prof https://new.prof

See the difference (subtraction) between the profiles. Useful to spot what piece of code to blame for a performance regression.

Courtesy of Keith: https://golang.org/214818

Original: https://twitter.com/mvdan_/status/1217313825600364544
Escape from Escape Analysis of #golang Sounds pretty interesting!

For the code, the heap allocation -8.88%, the heap usage -8.78%. Time consumption -9.48%, cumulative time of GC pause -5.64%.

Paper https://www.wingtecher.com/themes/WingTecherResearch/assets/papers/ICSE20.pdf

Code https://github.com/wangcong15/escape-from-escape-analysis-of-golang
List of #Awesome #golang performance tools and libs.
https://github.com/cristaloleg/awesome-go-perf

Feel free to submit more!

(and sorry for a long break:)
io_uring using #golang (liburing and CGo, to be exact)

by Agniva De Sarker https://github.com/agnivade (from twitter.com/Mattermost)

https://developers.mattermost.com/blog/hands-on-iouring-go/

Also don't forget to star pure Go solution https://github.com/hodgesds/iouring-go
(but hopefully https://github.com/golang/go/issues/31908 will be implemented in std)
Understanding CPU caches and whole CPU architecture with #golang by twitter.com/teivah

By the way, pretty beautiful illustrations!

https://medium.com/@teivah/go-and-cpu-caches-af5d32cc5592
A sampling Go profiler that allows you to analyze On-CPU as well as Off-CPU (e.g. I/O) time together.

https://github.com/felixge/fgprof by twitter.com/felixge

And it's literally under 100 lines! Amazing!
#golang Goroutine lifecycle by https://github.com/jcorbin

Writing this issue out of the @GopherCon 2019 contribution workshop (additional kudos to @golang workshops!)
(from issue https://github.com/golang/go/issues/33322 )