Links from patch/commit:
https://github.com/golang/go/issues/5160
https://github.com/golang/go/issues/32593
https://github.com/golang/go/issues/32779
https://commaok.xyz/post/intern-strings/
https://artem.krylysov.com/blog/2018/12/12/string-interning-in-go/
https://godoc.org/github.com/josharian/intern
https://godoc.org/github.com/chriso/go-intern
https://github.com/golang/go/issues/5160
https://github.com/golang/go/issues/32593
https://github.com/golang/go/issues/32779
https://commaok.xyz/post/intern-strings/
https://artem.krylysov.com/blog/2018/12/12/string-interning-in-go/
https://godoc.org/github.com/josharian/intern
https://godoc.org/github.com/chriso/go-intern
Austin Clements (from #golang team) @GopherCon about runtime changes in 1.14 and what is this loop preemption beast?
https://www.youtube.com/watch?v=1I1WmeSjRSw
PS: Austin's talk is an amazing gift, right before Christmas :D
https://www.youtube.com/watch?v=1I1WmeSjRSw
PS: Austin's talk is an amazing gift, right before Christmas :D
YouTube
GopherCon 2020: Pardon the Interruption: Loop Preemption in Go 1.14 - Austin Clements
Go 1.14 significantly changed how goroutines are preempted for scheduling and garbage collection. Since Go 1.2, the Go runtime has preempted goroutines only at function calls. Most of the time, this let Go developers ignore preemption and focus on writingโฆ
Now let's jump to the allocator changes and how to return memory back to OS by Michael Knyszek (from #golang team) at @GopherCon
Did you get this tree fix (ts@18:50) ? Heavy one. Bitmap tree is an another gem from runtime pkg
https://www.youtube.com/watch?v=S_1YfTfuWmo
PS: Christmas gifts 2.0 :D
Did you get this tree fix (ts@18:50) ? Heavy one. Bitmap tree is an another gem from runtime pkg
https://www.youtube.com/watch?v=S_1YfTfuWmo
PS: Christmas gifts 2.0 :D
YouTube
GopherCon 2020: Evolving the Go Memory Manager's RAM and CPU Efficiency - Michael Knyszek
This talk will discuss recent changes to the Go memory manager, which improved both the runtimeโs responsiveness in giving up unneeded memory and the scalability of the memory allocator. In this presentation, Michael peeks under the hood of the runtime, examinesโฆ
You know what? One more great talk from @GopherCon by Agniva De Sarker about Bound check elimination in #golang
Look at the examples, they're very explanatory!
https://www.youtube.com/watch?v=5toTS6kSWHA
Look at the examples, they're very explanatory!
https://www.youtube.com/watch?v=5toTS6kSWHA
YouTube
GopherCon 2020: Common Patterns for Bounds Check Elimination - Agniva De Sarker
Bounds checks are a necessary evil. If you donโt have them, you lose memory safety. If you have them, you hurt performance. Is it possible to have the best of both worlds? Why, yes! Watch this talk to learn more.
Back to string interning in #golang by
twitter.com/mdlayher
https://mdlayher.com/blog/unsafe-string-interning-in-go/
twitter.com/mdlayher
https://mdlayher.com/blog/unsafe-string-interning-in-go/
Allocations, size classes in #golang by twitter.com/davecheney
https://dave.cheney.net/2021/01/05/a-few-bytes-here-a-few-there-pretty-soon-youre-talking-real-memory
https://dave.cheney.net/2021/01/05/a-few-bytes-here-a-few-there-pretty-soon-youre-talking-real-memory
Neat #golang trick how to pack multiple slice allocations into one (or less than in a naive way), thanks to twitter.com/tvii for showing this!
https://vladimir.varank.in/notes/2019/09/go-http-headers/
(slices are amazing)
https://vladimir.varank.in/notes/2019/09/go-http-headers/
(slices are amazing)
Hey #gophers ! #golang compiler and runtime meeting notes are public!
Subscribe and follow all the new and amazing things happening in Go ๐๐๐
https://github.com/golang/go/issues/43930
Subscribe and follow all the new and amazing things happening in Go ๐๐๐
https://github.com/golang/go/issues/43930
GitHub
Go compiler and runtime meeting notes ยท Issue #43930 ยท golang/go
Google's Go compiler and runtime team meets periodically (roughly weekly) to discuss ongoing development of the compiler and runtime. While not open to the public, there's been desire by th...
New #golang GC Pacer desing by twitter.com/mknyswe
https://go.googlesource.com/proposal/+/a216b56e743c5b6b300b3ef1673ee62684b5b63b/design/44167-gc-pacer-redesign.md
Still at proposal phase, but worth to read https://github.com/golang/go/issues/44167
https://go.googlesource.com/proposal/+/a216b56e743c5b6b300b3ef1673ee62684b5b63b/design/44167-gc-pacer-redesign.md
Still at proposal phase, but worth to read https://github.com/golang/go/issues/44167
Cool stuff: buffer pool in #golang based on databases.
Also a neat part: CLOCK Replacement algorithm (read as better LRU, LFU policy)(however better can be argued :)
Thank you twitter.com/brunocalza !
https://brunocalza.me/how-buffer-pool-works-an-implementation-in-go/
Also a neat part: CLOCK Replacement algorithm (read as better LRU, LFU policy)(however better can be argued :)
Thank you twitter.com/brunocalza !
https://brunocalza.me/how-buffer-pool-works-an-implementation-in-go/