doc/next: add release notes for runtime and sync

Also, move the weak package heading to the end; it currently overlaps
with 1-osroot.md in the sort order.

For #68545.

Change-Id: Ia26ae511eaab7c8762e42d1593ac2197d25bbadb
Reviewed-on: https://go-review.googlesource.com/c/go/+/633599
Reviewed-by: David Chase <drchase@google.com>
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
Auto-Submit: Michael Knyszek <mknyszek@google.com>
This commit is contained in:
Michael Anthony Knyszek 2024-12-04 19:22:51 +00:00 committed by Gopher Robot
parent 32ff485c7c
commit 795d95d6ba
3 changed files with 21 additions and 0 deletions

View File

@ -1 +1,17 @@
## Runtime {#runtime}
<!-- go.dev/issue/54766 -->
<!-- go.dev/cl/614795 -->
<!-- go.dev/issue/68578 -->
Several performance improvements to the runtime have decreased CPU overheads by
2—3% on average across a suite of representative benchmarks.
Results may vary by application.
These improvements include a new builtin `map` implementation based on
[Swiss Tables](https://abseil.io/about/design/swisstables), more efficient
memory allocation of small objects, and a new runtime-internal mutex
implementation.
The new builtin `map` implementation and new runtime-internal mutex may be
disabled by setting `GOEXPERIMENT=noswissmap` and `GOEXPERIMENT=nospinbitmutex`
at build time respectively.

View File

@ -0,0 +1,5 @@
The implementation of [sync.Map] has been changed, improving overall performance
and resolving some long-standing issues.
If you encounter any problems, set `GOEXPERIMENT=nosynchashtriemap` at build
time to switch back to the old implementation and please [file an
issue](/issue/new).