From: Michael Anthony Knyszek Date: Wed, 28 May 2025 17:39:14 +0000 (+0000) Subject: doc/next: tweak runtime release notes X-Git-Tag: go1.25rc1~53 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=eff328804253e40a2de9c5d89cf7a7c1e23aa11d;p=gostls13.git doc/next: tweak runtime release notes - Add section headings to make the section easier to read. - Reorder features to better reflect their impact and importance. - Tweak some awkward wording here and there. Change-Id: If72c526f4b3a26a7a4584d6c59857db02c0c1338 Reviewed-on: https://go-review.googlesource.com/c/go/+/676818 Reviewed-by: Michael Pratt Auto-Submit: Michael Knyszek LUCI-TryBot-Result: Go LUCI --- diff --git a/doc/next/4-runtime.md b/doc/next/4-runtime.md index 67c1cee401..ef679a51ee 100644 --- a/doc/next/4-runtime.md +++ b/doc/next/4-runtime.md @@ -1,21 +1,6 @@ ## Runtime {#runtime} - - -The message printed when a program exits due to an unhandled panic -that was recovered and repanicked no longer repeats the text of -the panic value. - -Previously, a program which panicked with `panic("PANIC")`, -recovered the panic, and then repanicked with the original -value would print: - - panic: PANIC [recovered] - panic: PANIC - -This program will now print: - - panic: PANIC [recovered, repanicked] +### Container-aware `GOMAXPROCS` @@ -42,6 +27,43 @@ respectively. In order to support reading updated cgroup limits, the runtime will keep cached file descriptors for the cgroup files for the duration of the process lifetime. +### New experimental garbage collector + + + +A new garbage collector is now available as an experiment. This garbage +collector's design improves the performance of marking and scanning small objects +through better locality and CPU scalability. Benchmark result vary, but we expect +somewhere between a 10—40% reduction in garbage collection overhead in real-world +programs that heavily use the garbage collector. + +The new garbage collector may be enabled by setting `GOEXPERIMENT=greenteagc` +at build time. We expect the design to continue to evolve and improve. To that +end, we encourage Go developers to try it out and report back their experiences. +See the [GitHub issue](/issue/73581) for more details on the design and +instructions for sharing feedback. + +### Change to unhandled panic output + + + +The message printed when a program exits due to an unhandled panic +that was recovered and repanicked no longer repeats the text of +the panic value. + +Previously, a program which panicked with `panic("PANIC")`, +recovered the panic, and then repanicked with the original +value would print: + + panic: PANIC [recovered] + panic: PANIC + +This program will now print: + + panic: PANIC [recovered, repanicked] + +### VMA names on Linux + On Linux systems with kernel support for anonymous VMA names @@ -49,15 +71,3 @@ On Linux systems with kernel support for anonymous VMA names mappings with context about their purpose. e.g., `[anon: Go: heap]` for heap memory. This can be disabled with the [GODEBUG setting](/doc/godebug) `decoratemappings=0`. - - - -A new experimental garbage collector is now available as an experiment. The -new design aims to improve the efficiency of garbage collection through better -locality and CPU scalability in the mark algorithm. Benchmark result vary, but -we expect somewhere between a 10—40% reduction in garbage collection overhead -in real-world programs that heavily use the garbage collector. - -The new garbage collector may be enabled by setting `GOEXPERIMENT=greenteagc` -at build time. See the [GitHub issue](/issue/73581) for more details on the design -and instructions on how to report feedback.