diff --git a/image/dag.svg b/image/dag.svg new file mode 100644 index 0000000..421e97c --- /dev/null +++ b/image/dag.svg @@ -0,0 +1,153 @@ + + +G + + +cluster_sub2 + + + +cluster_sub1 + + + + +A3 + +A3 + + + +B3 + +B3 + + + +A3->B3 + + + + + +C3 + +C3 + + + +C3->B3 + + + + + +A2 + +A2 + + + +A2->A3 + + + + + +B2 + +B2 + + + +A2->B2 + + + + + +B + +B + + + +A2->B + + + + + +C2 + +C2 + + + +C2->B2 + + + + + +A + +A + + + +A->B + + + + + +C + +C + + + +C->B + + + + + +A1 + +A1 + + + +A1->B + + + + + +A1->C + + + + + +B1 + +B1 + + + +B1->C + + + + + +C1 + +C1 + + + \ No newline at end of file diff --git a/image/fl.svg b/image/fl.svg new file mode 100644 index 0000000..21d2eb1 --- /dev/null +++ b/image/fl.svg @@ -0,0 +1,493 @@ + + + + + + + + + + + + + + +Flame Graph + +Reset Zoom +Search +ic + + + +all (7,780 samples, 100%) + + + +static,B2,610ns (610 samples, 7.84%) +static,B2,6.. + + +static,C,670ns (670 samples, 8.61%) +static,C,670ns + + +static,B1,580ns (580 samples, 7.46%) +static,B1,.. + + +static,C3,530ns (530 samples, 6.81%) +static,C3.. + + +subflow,sub1,11150ns (2,380 samples, 30.59%) +subflow,sub1,11150ns + + +static,B3,590ns (590 samples, 7.58%) +static,B3,.. + + +static,A1,610ns (610 samples, 7.84%) +static,A1,6.. + + +static,A,1230ns (1,230 samples, 15.81%) +static,A,1230ns + + +static,A3,670ns (670 samples, 8.61%) +static,A3,67.. + + +subflow,sub2,5340ns (1,790 samples, 23.01%) +subflow,sub2,5340ns + + +static,C2,530ns (530 samples, 6.81%) +static,C2.. + + +static,A2,570ns (570 samples, 7.33%) +static,A2,.. + + +static,C1,480ns (480 samples, 6.17%) +static,C.. + + +static,B,710ns (710 samples, 9.13%) +static,B,710ns + + + \ No newline at end of file diff --git a/readme.md b/readme.md index 4401f5f..d0f42d9 100644 --- a/readme.md +++ b/readme.md @@ -122,7 +122,7 @@ if err := gotaskflow.Visualizer.Visualize(tf, os.Stdout); err != nil { ``` `Visualize` generate raw string in dot format, just use dot to draw a DAG svg. -![dot](https://raw.githubusercontent.com/noneback/images/ae31f3ea57f3f1b8d4cf94300a5ff502b2340214/graphviz.svg) +![dot](image/dag.svg) ### How to use profile taskflow ```go if err :=exector.Profile(os.Stdout);err != nil { @@ -132,7 +132,7 @@ if err :=exector.Profile(os.Stdout);err != nil { `Profile` alse generate raw string in flamegraph format, just use flamegraph to draw a flamegraph svg. -![flg](https://raw.githubusercontent.com/noneback/images/ae31f3ea57f3f1b8d4cf94300a5ff502b2340214/t.svg) +![flg](image/fl.svg) ## What's next - [ ] Taskflow Composition - [ ] Conditional Tasking