Earlier this summer, the Go team released version v0.12 of gopls, the language server for Go, featuring a rewrite of its core that allows it to scale to larger codebases.
Since then, we've fine-tuned the design, focusing on making interactive queries as fast as they were with v0.11, despite holding less state in memory.
Full updates β https://goo.gle/3sLzotE #golang
Since then, we've fine-tuned the design, focusing on making interactive queries as fast as they were with v0.11, despite holding less state in memory.
Full updates β https://goo.gle/3sLzotE #golang
go.dev
Scaling gopls for the growing Go ecosystem - The Go Programming Language
As the Go ecosystem gets bigger, gopls must get smaller
β€11
You probably know about Russ Cox's blog post about sparse maps:
https://research.swtch.com/sparse
This data structure is used in #golang source code (mainly inside the compiler).
I came up with another idea that can work even faster:
https://quasilyte.dev/blog/post/gen-map/
From: https://twitter.com/quasilyte/status/1705233800370778402
https://research.swtch.com/sparse
This data structure is used in #golang source code (mainly inside the compiler).
I came up with another idea that can work even faster:
https://quasilyte.dev/blog/post/gen-map/
From: https://twitter.com/quasilyte/status/1705233800370778402
www.quasilyte.dev
Generations-based array Β· Iskander (Alex) Sharipov technical blog
Technical blog about systems programming and related topics
β€8
proposal: runtime/trace: flight recording #golang by Michael Knyszek
https://github.com/golang/go/issues/63185
(thanks to Ehsan)
https://github.com/golang/go/issues/63185
(thanks to Ehsan)
GitHub
runtime/trace: flight recording Β· Issue #63185 Β· golang/go
Proposal: runtime/trace flight recording Updated: 23 September 2023 Background "Flight recording" is a technique in which trace data is kept in a conceptual circular buffer, flushed upon ...
β€3
What a gem by @mvdan_ !
https://github.com/golang/go/issues/20364#issuecomment-1733777923
$ GORACE=atexit_sleep_ms=10 go test -race
See also @dvyukov reasoning https://groups.google.com/g/golang-nuts/c/HBJQaijCwGo/m/P1NNQN7wyMAJ
(please, don't change it blindly, you may miss some data races)
https://github.com/golang/go/issues/20364#issuecomment-1733777923
$ GORACE=atexit_sleep_ms=10 go test -race
See also @dvyukov reasoning https://groups.google.com/g/golang-nuts/c/HBJQaijCwGo/m/P1NNQN7wyMAJ
(please, don't change it blindly, you may miss some data races)
GitHub
go test -race adds 1 second execution time to every package tested Β· Issue #20364 Β· golang/go
Please answer these questions before submitting your issue. Thanks! What version of Go are you using (go version)? go1.8 What operating system and processor architecture are you using (go env)? lin...
β€1
πΊπ¦ Go performance channel
What a gem by @mvdan_ ! https://github.com/golang/go/issues/20364#issuecomment-1733777923 $ GORACE=atexit_sleep_ms=10 go test -race See also @dvyukov reasoning https://groups.google.com/g/golang-nuts/c/HBJQaijCwGo/m/P1NNQN7wyMAJ (please, don't changeβ¦
By the way "This was fixed, accidentally" https://github.com/golang/go/issues/61852#issuecomment-1670267724
GitHub
cmd/go: 1.21 regression in test times with `-race` Β· Issue #61852 Β· golang/go
What version of Go are you using (go version)? $ go version go version go1.21.0 linux/amd64 Does this issue reproduce with the latest release? Yes What did you do? Setup mostly empty project: $ go ...
encoding/json/v2 by @_joetsai https://github.com/golang/go/discussions/63397
+ Performance paragraph https://pkg.go.dev/github.com/go-json-experiment/json#section-readme
+ Performance paragraph https://pkg.go.dev/github.com/go-json-experiment/json#section-readme
GitHub
encoding/json/v2 Β· golang go Β· Discussion #63397
This is a discussion intended to lead to a formal proposal. This was written with input from @mvdan, @johanbrandhorst, @rogpeppe, @chrishines, @rsc. Background The widely-used "encoding/json&q...
β€5
[security] Go 1.21.2 and Go 1.20.9 are released
https://groups.google.com/g/golang-announce/c/XBa1oHDevAo
https://groups.google.com/g/golang-announce/c/XBa1oHDevAo
β€5
[security] Go 1.21.3 and Go 1.20.10 are released
https://groups.google.com/g/golang-announce/c/iNNxDTCjZvo
https://groups.google.com/g/golang-announce/c/iNNxDTCjZvo
β€8
all: instruction alignment optimizations for amd64 assembly, good starter projects #golang
https://github.com/golang/go/issues/63678
https://github.com/golang/go/issues/63678
GitHub
all: instruction alignment optimizations for amd64 assembly, good starter projects Β· Issue #63678 Β· golang/go
Issue #56474 added support for instruction alignment on the amd64 architecture. This is achieved with the PCALIGN assembly pseudo instruction, which inserts NOP's to align to a given boundary. ...
proposal: runtime: software floating point for GOARM=6, 7 (not only GOARM=5) #golang
https://github.com/golang/go/issues/61588
https://github.com/golang/go/issues/61588
GitHub
proposal: runtime: software floating point for GOARM=6, 7 (not only GOARM=5) Β· Issue #61588 Β· golang/go
I want to run a go binary on an ARMv7 target that doesn't have a hardware floating point unit (FPU). (The ARMv7 specification does not require a hardware FPU; it is optional.) Currently, the on...
β€3
πΊπ¦ Go performance channel
We're happy to announce Go-perf meetup #1 #golang See https://go-perf.dev/go-perf-meetup-1
Go Performance
Sad update about Go-perf meetup #1
TLDR: not gonna happen soon, sorry
Status update
A few people who stand behind Go-perf are on low power now and 1 person cannot organise everything and be happy with the quality of the event. So, after some discussion that should happened earlier, w...
Status update
A few people who stand behind Go-perf are on low power now and 1 person cannot organise everything and be happy with the quality of the event. So, after some discussion that should happened earlier, w...
β€12
Building a high performance JSON parser #golang
https://dave.cheney.net/paste/gophercon-sg-2023.html by @davecheney
https://dave.cheney.net/paste/gophercon-sg-2023.html by @davecheney
dave.cheney.net
Building a high performance JSON parser
β€9
π₯³ Go 1.21.4 and 1.20.11 are released!
π Security: Includes security fixes for path/filepath (CVE-2023-45283, CVE-2023-45284)
π£ Announcement: https://groups.google.com/g/golang-announce/c/4tU8LZfBFkY
π Download: https://go.dev/dl/#go1.21.4
#golang
π Security: Includes security fixes for path/filepath (CVE-2023-45283, CVE-2023-45284)
π£ Announcement: https://groups.google.com/g/golang-announce/c/4tU8LZfBFkY
π Download: https://go.dev/dl/#go1.21.4
#golang
go.dev
All releases - The Go Programming Language
β€8
runtime: make GOMAXPROCS cfs-aware on GOOS=linux #golang https://github.com/golang/go/issues/33803
Also, Go, Containers, and the Linux Scheduler https://www.riverphillips.dev/blog/go-cfs/
Also, Go, Containers, and the Linux Scheduler https://www.riverphillips.dev/blog/go-cfs/
GitHub
runtime: make `GOMAXPROCS` cfs-aware on `GOOS=linux` Β· Issue #33803 Β· golang/go
Problem The default setting of runtime.GOMAXPROCS() (to be the number of os-apparent processors) can be greatly misaligned with container cpu quota (e.g. as implemented through cfs bandwidth contro...
β€6
β€7