@@ -60,6 +60,22 @@ <h3 id="cgo">Cgo</h3>
60
60
<!-- add #cgo noescape/nocallback annotations -->
61
61
</ p >
62
62
63
+ < h3 id ="trace "> Trace</ h3 >
64
+
65
+ <!-- https://go.dev/issue/63960 -->
66
+ < p >
67
+ The < code > trace</ code > tool's web UI has been gently refreshed as part of the
68
+ work to support the new tracer, resolving several issues and improving the
69
+ readability of various sub-pages.
70
+ The web UI now supports exploring traces in a thread-oriented view.
71
+ The trace viewer also now displays the full duration of all system calls.
72
+ < br />
73
+ These improvements only apply for viewing traces produced by programs built with
74
+ Go 1.22 or newer.
75
+ A future release will bring some of these improvements to traces produced by older
76
+ version of Go.
77
+ </ p >
78
+
63
79
< h3 id ="vet "> Vet</ h3 >
64
80
65
81
< p > <!-- CL 539016 -->
@@ -546,6 +562,35 @@ <h3 id="minor_library_changes">Minor changes to the library</h3>
546
562
</ dd >
547
563
</ dl > <!-- runtime/metrics -->
548
564
565
+ < dl id ="runtime/trace "> < dt > < a href ="/pkg/runtime/trace/ "> runtime/trace</ a > </ dt >
566
+ < dd >
567
+ < p > <!-- https://go.dev/issue/60773 -->
568
+ The execution tracer has been completely overhauled in this release, resolving several long-standing
569
+ issues and paving the way for new use-cases for execution traces.
570
+ < br />
571
+ Execution traces now use the operating system's clock on most platforms (Windows excluded) so
572
+ it is possible to correlate them with traces produced by lower-level components.
573
+ Execution traces no longer depend on the reliability of the platform's clock to produce a correct trace.
574
+ Execution traces are now partitioned regularly on-the-fly and as a result may be processed in a
575
+ streamable way.
576
+ Execution traces now contain complete durations for all system calls.
577
+ Execution traces now contain information about the operating system threads that goroutines executed on.
578
+ The latency impact of starting and stopping execution traces has been dramatically reduced.
579
+ Execution traces may now begin or end during the garbage collection mark phase.
580
+ < br />
581
+ To allow Go developers to take advantage of these improvements, an experimental
582
+ trace reading package is available at < a href ="/pkg/golang.org/x/exp/trace "> golang.org/x/exp/trace</ a > .
583
+ Note that this package only works on traces produced by programs built with Go 1.22 at the moment.
584
+ Please try out the package and provide feedback on
585
+ < a href ="https://github.com/golang/go/issues/62627 "> the corresponding proposal issue</ a > .
586
+ < br />
587
+ If you experience any issues with the new execution tracer implementation, you may switch back to the
588
+ old implementation by building your Go program with < code > GOEXPERIMENT=noexectracer2</ code > .
589
+ If you do, please file an issue, otherwise this option will be removed in a future release.
590
+ </ p >
591
+ </ dd >
592
+ </ dl > <!-- runtime/trace -->
593
+
549
594
< dl id ="slices "> < dt > < a href ="/pkg/slices/ "> slices</ a > </ dt >
550
595
< dd >
551
596
< p > <!-- https://go.dev/issue/56353 --> <!-- CL 504882 -->
0 commit comments