This is an automated email from the ASF dual-hosted git repository.
xtsong pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/flink.git
The following commit(s) were added to refs/heads/master by this push:
new b4810b5a0fd [FLINK-30584][docs] Document flame graph at the subtask
level
b4810b5a0fd is described below
commit b4810b5a0fdbafafdd089c621e9f68c2f2800c76
Author: 1996fanrui <[email protected]>
AuthorDate: Sat Jan 7 14:14:18 2023 +0800
[FLINK-30584][docs] Document flame graph at the subtask level
This closes #21614
---
docs/content.zh/docs/ops/debugging/flame_graphs.md | 18 ++++++++++--------
docs/content/docs/ops/debugging/flame_graphs.md | 18 ++++++++++--------
docs/static/fig/flame_graph_subtask.png | Bin 0 -> 318919 bytes
3 files changed, 20 insertions(+), 16 deletions(-)
diff --git a/docs/content.zh/docs/ops/debugging/flame_graphs.md
b/docs/content.zh/docs/ops/debugging/flame_graphs.md
index 3bcc7176343..fdb71fba45e 100644
--- a/docs/content.zh/docs/ops/debugging/flame_graphs.md
+++ b/docs/content.zh/docs/ops/debugging/flame_graphs.md
@@ -76,13 +76,15 @@ Flame Graph in Mixed Mode
The collection of stack traces is done purely within the JVM, so only method
calls within the Java runtime are visible (no system calls).
-Flame Graph construction is performed at the level of an individual
[operator]({{< ref "docs/concepts/glossary" >}}#operator), i.e. all [task]({{<
ref "docs/concepts/glossary" >}}#task) threads of that operator are sampled in
parallel and their stack traces are combined.
+Flame Graph construction is performed at the level of an individual
[operator]({{< ref "docs/concepts/glossary" >}}#operator) by default,
+i.e. all [task]({{< ref "docs/concepts/glossary" >}}#task) threads of that
operator are sampled in parallel and their stack traces are combined.
+If a method call consumes 100% of the resources in one of the parallel tasks
but none in the others,
+the bottleneck might be obscured by being averaged out.
+Starting with Flink 1.17, Flame Graph provides "drill down" visualizations to
the task level.
+Select a subtask of interest, and you can see the flame graph of the
corresponding subtask.
-
-{{< hint info >}}
-**Note:**
-Stack trace samples from all threads of an operator are combined together. If
a method call consumes 100% of the resources in one of the parallel tasks but
none in the others, the bottleneck might be obscured by being averaged out.
-
-There are plans to address this limitation in the future by providing "drill
down" visualizations to the task level.
-{{< /hint >}}
+{{< img src="/fig/flame_graph_subtask.png" class="img-fluid" width="90%" >}}
+{{% center %}}
+Flame Graph to the subtask level
+{{% /center %}}
diff --git a/docs/content/docs/ops/debugging/flame_graphs.md
b/docs/content/docs/ops/debugging/flame_graphs.md
index 2c0321aa225..8a2a99c697e 100644
--- a/docs/content/docs/ops/debugging/flame_graphs.md
+++ b/docs/content/docs/ops/debugging/flame_graphs.md
@@ -76,13 +76,15 @@ Flame Graph in Mixed Mode
The collection of stack traces is done purely within the JVM, so only method
calls within the Java runtime are visible (no system calls).
-Flame Graph construction is performed at the level of an individual
[operator]({{< ref "docs/concepts/glossary" >}}#operator), i.e. all [task]({{<
ref "docs/concepts/glossary" >}}#task) threads of that operator are sampled in
parallel and their stack traces are combined.
+Flame Graph construction is performed at the level of an individual
[operator]({{< ref "docs/concepts/glossary" >}}#operator) by default,
+i.e. all [task]({{< ref "docs/concepts/glossary" >}}#task) threads of that
operator are sampled in parallel and their stack traces are combined.
+If a method call consumes 100% of the resources in one of the parallel tasks
but none in the others,
+the bottleneck might be obscured by being averaged out.
+Starting with Flink 1.17, Flame Graph provides "drill down" visualizations to
the task level.
+Select a subtask of interest, and you can see the flame graph of the
corresponding subtask.
-
-{{< hint info >}}
-**Note:**
-Stack trace samples from all threads of an operator are combined together. If
a method call consumes 100% of the resources in one of the parallel tasks but
none in the others, the bottleneck might be obscured by being averaged out.
-
-There are plans to address this limitation in the future by providing "drill
down" visualizations to the task level.
-{{< /hint >}}
+{{< img src="/fig/flame_graph_subtask.png" class="img-fluid" width="90%" >}}
+{{% center %}}
+Flame Graph to the subtask level
+{{% /center %}}
diff --git a/docs/static/fig/flame_graph_subtask.png
b/docs/static/fig/flame_graph_subtask.png
new file mode 100644
index 00000000000..6c6192297cd
Binary files /dev/null and b/docs/static/fig/flame_graph_subtask.png differ