Our Mad Journey of Building a Vector Database in #golang by @weaviate_io
https://www.youtube.com/watch?v=K1R7oK2piUM
https://www.youtube.com/watch?v=K1R7oK2piUM
YouTube
Our Mad Journey of Building a Vector Database in Go - Weaviate at FOSDEM 2023
Building a database from scratch is no small feat. Doing so in Go might just be pure madness. In this talk, Co-Founder & CTO Etienne Dilocker highlights the unique challenges and their creative solutions that our development team encountered while buildingโฆ
Userspace WireGuard doesn't have to be slow. We've made some changes that let us saturate 10Gb/s and push wireguard-go past even the kernel WireGuard driver.
https://tailscale.com/blog/more-throughput/
https://tailscale.com/blog/more-throughput/
Tailscale
Surpassing 10Gb/s with Tailscale: Performance Gains on Linux
Discover how Tailscale achieved over 10Gb/s throughput on Linux using advanced UDP segmentation and checksum optimizations. Explore benchmarks, results, and the innovations powering wireguard go's latest performance leap.
Don't let memory leaks go undetected in your #golang application! Our latest blog post shows you how to use Grafana #Pyroscope to continuously profile and catch them early.
https://grafana.com/blog/2023/04/19/how-to-troubleshoot-memory-leaks-in-go-with-grafana-pyroscope/?mdm=social
https://grafana.com/blog/2023/04/19/how-to-troubleshoot-memory-leaks-in-go-with-grafana-pyroscope/?mdm=social
Grafana Labs
How to troubleshoot memory leaks in Go with Grafana Pyroscope | Grafana Labs
Explore common causes of memory leaks in Go and learn to use Grafana Pyroscope, an open source continuous profiling solution, to find and fix these leaks.
Allow more inlining of functions that construct closures #golang
> This will help significantly with the performance of the functions <...>, which have a somewhat complicated nesting of closures with a performance-critical fast path.
https://go-review.googlesource.com/c/go/+/482356
> This will help significantly with the performance of the functions <...>, which have a somewhat complicated nesting of closures with a performance-critical fast path.
https://go-review.googlesource.com/c/go/+/482356
cmd/compile: add reassociate pass to rebalance commutative operations.
That's one small SSA pass for compiler, one giant leap for #golang performance ๐
https://github.com/golang/go/pull/60015
That's one small SSA pass for compiler, one giant leap for #golang performance ๐
https://github.com/golang/go/pull/60015
GitHub
cmd/compile: add reassociate pass to rebalance commutative operations by ryan-berger ยท Pull Request #60015 ยท golang/go
Currently the compiler groups expressions with commutative operations such as a + b + c + d as so: (a + (b + (c + d))) which is suboptimal for CPU instruction pipelining.
This pass balances commuta...
This pass balances commuta...
The absurd cost of finalizers in #golang by @lemire
https://lemire.me/blog/2023/05/19/the-absurd-cost-of-finalizers-in-go/
https://lemire.me/blog/2023/05/19/the-absurd-cost-of-finalizers-in-go/
Using UPX for compression might work against you
https://usrme.xyz/posts/using-upx-for-compression-might-work-against-you/
https://usrme.xyz/posts/using-upx-for-compression-might-work-against-you/
> We are using the Iguana compression already in Sneller Cloud for very fast and efficient log analysis. We are planning on releasing it as a standalone compression library for #golang in the near future.
https://sneller.io/blog/decompressing-at-over-10-gigabytes-per-second/
https://sneller.io/blog/decompressing-at-over-10-gigabytes-per-second/
Sneller
Introducing Iguana: extremely fast SIMD-optimized decompression
Improving Observability of #golang Services by @flow_blockchain
https://flow.com/engineering-blogs/golang-services-improving-observability
https://flow.com/engineering-blogs/golang-services-improving-observability
Flow
Improving Observability of GoLang Services
Jan 31, 2023
Execution tracer overhaul by @mknyswe
#golang issue: https://github.com/golang/go/issues/60773 & doc:
https://go.googlesource.com/proposal/+/ac09a140c3d26f8bb62cbad8969c8b154f93ead6/design/60773-execution-tracer-overhaul.md
#golang issue: https://github.com/golang/go/issues/60773 & doc:
https://go.googlesource.com/proposal/+/ac09a140c3d26f8bb62cbad8969c8b154f93ead6/design/60773-execution-tracer-overhaul.md
GitHub
runtime/trace: execution tracer overhaul ยท Issue #60773 ยท golang/go
Execution tracer overhaul Authored by [email protected] with a mountain of input from others. In no particular order, thank you to Felix Geisendorfer, Nick Ripley, Michael Pratt, Austin Clements,...
๐บ๐ฆ Go performance channel
Execution tracer overhaul by @mknyswe #golang issue: https://github.com/golang/go/issues/60773 & doc: https://go.googlesource.com/proposal/+/ac09a140c3d26f8bb62cbad8969c8b154f93ead6/design/60773-execution-tracer-overhaul.md
> Thanks to work in Go 1.21 cycle, the execution tracerโs run-time overhead was reduced from about -10% throughput and +10% request latency in web services to about 1% in both for most applications.
๐บ๐ฆ Go performance channel
โGo 1.21 Release Candidateโ by @elibendersky โ go.dev/blog/go1.21rc
> Go 1.21 improves build speed by up to 6%, largely thanks to building the compiler itself with PGO.
From https://github.com/golang/go/issues/43930
> SwissTable: Google3 may want to do some benchmarking on this. Maps are used heavily in google3. This may be of value to us.
There is a chance that next #golang releases will have a faster map implementation!
(Note: Google3 is Google's monorepo)
> SwissTable: Google3 may want to do some benchmarking on this. Maps are used heavily in google3. This may be of value to us.
There is a chance that next #golang releases will have a faster map implementation!
(Note: Google3 is Google's monorepo)
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...
#golang linker optimisation in upcoming Go 1.21 https://go-review.googlesource.com/c/go/+/490915
(There is even more changes, see drop from Apr 24)
(There is even more changes, see drop from Apr 24)