Mutex profiler
You can run the Mutex profiler only for Go tests and benchmarks
Mutex profiler shows you a fraction of stack traces of goroutines with contended mutexes.
Open the _test.go file.
Near the function or method that you want to profile, click the Run Application icon
in the gutter area and select Run <configuration_name> with 'Mutex Profiler'.

- Flame Chart
The Flame Graph tab shows you function calls and the amount of time in which goroutines are not running (waiting). Each block represents a function in the stack. On the Y-axis, there is a stack depth going from bottom up. The X-axis shows the stack profile sorted in the increasing order according to the number of delays for each function (with Contentions selected) or according to the time that was spent in the waiting state (with Delay selected).
In the Flame Graph tab, you can hover over any block to view the details.
, where
1
: a number of delays at each region.
100.00% of parent
: percentage between different procedures that belong to a single parent call.50.00% of all
: percentage of delay time for the procedure and all of its callees.
- Call Tree
The Call Tree tab shows the call tree with a number of delays for each function (with Contentions selected) or with time that was spent in the waiting state (with Delay selected). It organizes the data in the decreasing order. To configure and filter the Call Tree view, use the Presentation Settings button
.
Thanks for your feedback!