diff --git a/Project.toml b/Project.toml
index 93300bc9..c476fa6f 100644
--- a/Project.toml
+++ b/Project.toml
@@ -7,18 +7,24 @@ Compat = "34da2185-b29b-5c13-b0c7-acf172513d20"
DataStructures = "864edb3b-99cc-5e75-8d2d-829cb0a9cfe8"
LinearAlgebra = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e"
Pkg = "44cfe95a-1eb2-52ea-b672-e2afdf69b78f"
-Requires = "ae029012-a4dd-5104-9daa-d747884805df"
StaticArrays = "90137ffa-7385-5640-81b9-e52037218182"
[compat]
DataStructures = "0.18"
Pkg = "1.6"
-Requires = "1.3"
StaticArrays = "1.5"
julia = "1.6"
+[extensions]
+DataFlowTasks_GraphViz_Ext = "GraphViz"
+DataFlowTasks_Makie_Ext = "Makie"
+
[extras]
Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40"
[targets]
test = ["Test"]
+
+[weakdeps]
+GraphViz = "f526b714-d49f-11e8-06ff-31ed36ee7ee0"
+Makie = "ee78f7c6-11fb-53f2-987a-cfe4a2b5a57a"
diff --git a/README.md b/README.md
index c39da599..42f8fc52 100644
--- a/README.md
+++ b/README.md
@@ -68,7 +68,7 @@ represented as a Directed Acyclic Graph. Reconstructing the `DAG` (as well as
the parallalel traces) can be done using the `@log` macro:
````julia
-using GraphViz # triggers additional code loading, powered by Requires.jl
+using GraphViz # triggers additional code loading, powered by weak dependencies (julia >= 1.9)
log_info = DataFlowTasks.@log let
@dspawn fill!(@W(A), 0) label="write whole"
@dspawn @RW(view(A, 1:2)) .+= 2 label="write 1:2"
@@ -76,14 +76,14 @@ log_info = DataFlowTasks.@log let
res = @dspawn @R(A) label="read whole"
fetch(res)
end
-dag = DataFlowTasks.plot_dag(log_info)
+dag = GraphViz.Graph(log_info)
````
![](docs/readme/example_dag.svg)
In the example above, the tasks *write 1:2* and *write 3:4* access
different parts of the array `A` and are
-therefore independant, as shown in the DAG.
+therefore independent, as shown in the DAG.
## Example : Parallel Cholesky Factorization
@@ -100,12 +100,12 @@ version of this algorithm decomposes the matrix A into tiles (of even sizes,
in this simplified version). At each step of the algorithm, we do a Cholesky
factorization on the diagonal tile, use a triangular solve to update all of
the tiles at the right of the diagonal tile, and finally update all the tiles
-of the submatrix with a schur complement.
+of the submatrix with a Schur complement.
If we have a matrix A decomposed in `n x n` tiles, then the algorithm will
have `n` steps. The `i`-th step (with `i ∈ [1:n]`) will perform
-- `1` cholesky factorization of the (i,i) block,
+- `1` Cholesky factorization of the (i,i) block,
- `(i-1)` triangular solves (one for each block in the `i`-th row),
- `i*(i-1)/2` matrix multiplications to update the submatrix.
@@ -128,7 +128,7 @@ function cholesky_tiled!(A, ts)
T = [view(A, tilerange(i, ts), tilerange(j, ts)) for i in 1:n, j in 1:n]
for i in 1:n
- # Diagonal cholesky serial factorization
+ # Diagonal Cholesky serial factorization
cholesky!(T[i,i])
# Left blocks update
@@ -163,7 +163,7 @@ function cholesky_dft!(A, ts)
T = [view(A, tilerange(i, ts), tilerange(j, ts)) for i in 1:n, j in 1:n]
for i in 1:n
- # Diagonal cholesky serial factorization
+ # Diagonal Cholesky serial factorization
@dspawn cholesky!(@RW(T[i,i])) label="chol ($i,$i)"
# Left blocks update
@@ -194,7 +194,7 @@ The code below shows how to use this `cholesky_tiled!` function, as well as
how to profile the program and get information about how tasks were scheduled:
````julia
-# DataFlowTasks environnement setup
+# DataFlowTasks environment setup
# Context
n = 2048
@@ -216,7 +216,7 @@ err = norm(F.L*F.U-A,Inf)/max(norm(A),norm(F.L*F.U))
## Debugging and Profiling
-DataFlowTasks comes with debugging and profiling tools which help
+DataFlowTasks comes with debugging and profiling tools that help
understanding how task dependencies were inferred, and how tasks were
scheduled during execution.
@@ -242,19 +242,19 @@ In this more complex example, we can see how quickly the DAG complexity
increases (even though the test case only has 4x4 blocks here):
````julia
-dag = DataFlowTasks.plot_dag(log_info)
+dag = GraphViz.Graph(log_info)
````
![](docs/readme/cholesky_dag.svg)
-The parallel trace plot shows a timeline of the tasks execution on available
-threads. It helps understanding how tasks were scheduled. The same window also
+The parallel trace plot shows a timeline of the tasks' execution on available
+threads. It helps in understanding how tasks were scheduled. The same window also
carries other general information allowing to better understand the
performance limiting factors:
````julia
using CairoMakie # or GLMakie in order to have more interactivity
-trace = DataFlowTasks.plot_traces(log_info; categories=["chol", "ldiv", "schur"])
+trace = plot(log_info; categories=["chol", "ldiv", "schur"])
````
![](docs/readme/cholesky_trace.svg)
@@ -263,13 +263,13 @@ We see here that the execution time is bounded by the length of the critical
path: with this block size and matrix size, the algorithm does not expose
enough parallelism to occupy all threads without waiting periods.
-We'll cover in details the usage and possibilities of the visualization in the
+We'll cover in detail the usage and possibilities of the visualization in the
documentation.
Note that the debugging & profiling tools need additional dependencies such as
`Makie` and `GraphViz`, which are only meant to be used interactively during
the development process. These packages are therefore only considered as
-optional depdendencies; assuming they are available in your work environment,
+optional dependencies; assuming they are available in your work environment,
calling e.g. `using GraphViz` will load some additional code from
`DataFlowTasks` (see also the documentation of `DataFlowTasks.@using_opt` if
you prefer an alternative way of handling these extra dependencies).
@@ -285,7 +285,7 @@ implementations for the sequential building blocks operating on tiles:
This approach is pursued in
[`TiledFactorization.jl`](https://github.com/maltezfaria/TiledFactorization),
-where all the above mentioned building blocks are combined with the
+where all the above-mentioned building blocks are combined with the
parallelization strategy presented here to create a *pure Julia*
implementation of the matrix factorizations. The performances of this
implementation is assessed in the following plot, by comparison to MKL on a
diff --git a/docs/Project.toml b/docs/Project.toml
index 60ee8c95..de5da275 100644
--- a/docs/Project.toml
+++ b/docs/Project.toml
@@ -1,6 +1,7 @@
[deps]
BenchmarkTools = "6e4b80f9-dd63-53aa-95a3-0cdb28fa8baf"
CairoMakie = "13f3f980-e62b-5c42-98c6-ff1f3baf88f0"
+DataFlowTasks = "d1549cb6-e9f4-42f8-98cc-ffc8d067ff5b"
Documenter = "e30172f5-a6a5-5a46-863b-614d45cd2de4"
GraphViz = "f526b714-d49f-11e8-06ff-31ed36ee7ee0"
Images = "916415d5-f1e6-5110-898d-aaa5f9f070e0"
diff --git a/docs/make.jl b/docs/make.jl
index 6269a898..5df49d18 100644
--- a/docs/make.jl
+++ b/docs/make.jl
@@ -11,8 +11,16 @@ end
DocMeta.setdocmeta!(DataFlowTasks, :DocTestSetup, :(using CairoMakie, GraphViz, DataFlowTasks); recursive=true)
+modules = [DataFlowTasks]
+if isdefined(Base, :get_extension)
+ using GraphViz, CairoMakie
+ const GraphViz_Ext = Base.get_extension(DataFlowTasks, :DataFlowTasks_GraphViz_Ext)
+ const Makie_Ext = Base.get_extension(DataFlowTasks, :DataFlowTasks_Makie_Ext)
+ append!(modules, (GraphViz_Ext, Makie_Ext))
+end
+
makedocs(;
- modules=[DataFlowTasks],
+ modules = modules,
repo="https://github.com/maltezfaria/DataFlowTasks.jl/blob/{commit}{path}#{line}",
sitename="DataFlowTasks.jl",
format=Documenter.HTML(;
diff --git a/docs/readme/README.ipynb b/docs/readme/README.ipynb
index 2bf32760..5e8218f1 100644
--- a/docs/readme/README.ipynb
+++ b/docs/readme/README.ipynb
@@ -111,7 +111,7 @@
{
"output_type": "execute_result",
"data": {
- "text/plain": "GraphViz.Graph(Ptr{Nothing} @0x00007fa75372cbf0, false)",
+ "text/plain": "GraphViz.Graph(Ptr{Nothing} @0x00007ff07d051a60, false)",
"image/svg+xml": [
"\n",
"\n",
"
dag\n",
"\n",
- "\n",
- "\n",
- "8\n",
- "\n",
- "read whole\n",
- "\n",
"\n",
- "\n",
+ "\n",
"6\n",
"\n",
"write 1:2\n",
"\n",
+ "\n",
+ "\n",
+ "8\n",
+ "\n",
+ "read whole\n",
+ "\n",
"\n",
- "\n",
+ "\n",
"6->8\n",
"\n",
"\n",
"\n",
- "\n",
- "\n",
- "7\n",
- "\n",
- "write 3:4\n",
- "\n",
- "\n",
- "\n",
- "7->8\n",
- "\n",
- "\n",
- "\n",
"\n",
- "\n",
+ "\n",
"5\n",
"\n",
"write whole\n",
"\n",
"\n",
- "\n",
+ "\n",
"5->6\n",
"\n",
"\n",
"\n",
+ "\n",
+ "\n",
+ "7\n",
+ "\n",
+ "write 3:4\n",
+ "\n",
"\n",
- "\n",
+ "\n",
"5->7\n",
"\n",
"\n",
"\n",
+ "\n",
+ "\n",
+ "7->8\n",
+ "\n",
+ "\n",
+ "\n",
"\n",
"\n"
]
@@ -182,7 +182,7 @@
],
"cell_type": "code",
"source": [
- "using GraphViz # triggers additional code loading, powered by Requires.jl\n",
+ "using GraphViz # triggers additional code loading, powered by weak dependencies (julia >= 1.9)\n",
"log_info = DataFlowTasks.@log let\n",
" @dspawn fill!(@W(A), 0) label=\"write whole\"\n",
" @dspawn @RW(view(A, 1:2)) .+= 2 label=\"write 1:2\"\n",
@@ -190,7 +190,7 @@
" res = @dspawn @R(A) label=\"read whole\"\n",
" fetch(res)\n",
"end\n",
- "dag = DataFlowTasks.plot_dag(log_info)"
+ "dag = GraphViz.Graph(log_info)"
],
"metadata": {},
"execution_count": 2
@@ -200,7 +200,7 @@
"source": [
"In the example above, the tasks *write 1:2* and *write 3:4* access\n",
"different parts of the array `A` and are\n",
- "therefore independant, as shown in the DAG."
+ "therefore independent, as shown in the DAG."
],
"metadata": {}
},
@@ -227,12 +227,12 @@
"in this simplified version). At each step of the algorithm, we do a Cholesky\n",
"factorization on the diagonal tile, use a triangular solve to update all of\n",
"the tiles at the right of the diagonal tile, and finally update all the tiles\n",
- "of the submatrix with a schur complement.\n",
+ "of the submatrix with a Schur complement.\n",
"\n",
"If we have a matrix A decomposed in `n x n` tiles, then the algorithm will\n",
"have `n` steps. The `i`-th step (with `i ∈ [1:n]`) will perform\n",
"\n",
- "- `1` cholesky factorization of the (i,i) block,\n",
+ "- `1` Cholesky factorization of the (i,i) block,\n",
"- `(i-1)` triangular solves (one for each block in the `i`-th row),\n",
"- `i*(i-1)/2` matrix multiplications to update the submatrix.\n",
"\n",
@@ -274,7 +274,7 @@
" T = [view(A, tilerange(i, ts), tilerange(j, ts)) for i in 1:n, j in 1:n]\n",
"\n",
" for i in 1:n\n",
- " # Diagonal cholesky serial factorization\n",
+ " # Diagonal Cholesky serial factorization\n",
" cholesky!(T[i,i])\n",
"\n",
" # Left blocks update\n",
@@ -328,7 +328,7 @@
" T = [view(A, tilerange(i, ts), tilerange(j, ts)) for i in 1:n, j in 1:n]\n",
"\n",
" for i in 1:n\n",
- " # Diagonal cholesky serial factorization\n",
+ " # Diagonal Cholesky serial factorization\n",
" @dspawn cholesky!(@RW(T[i,i])) label=\"chol ($i,$i)\"\n",
"\n",
" # Left blocks update\n",
@@ -374,7 +374,7 @@
"outputs": [],
"cell_type": "code",
"source": [
- "# DataFlowTasks environnement setup\n",
+ "# DataFlowTasks environment setup\n",
"\n",
"# Context\n",
"n = 2048\n",
@@ -393,7 +393,7 @@
"output_type": "stream",
"text": [
"[ Info: Testing sequential Cholesky factorization\n",
- "err = 9.810013879558833e-18\n"
+ "err = 9.809974464172611e-18\n"
]
}
],
@@ -417,7 +417,7 @@
"output_type": "stream",
"text": [
"[ Info: Testing parallel Cholesky factorization\n",
- "err = 9.810013879558833e-18\n"
+ "err = 9.809974464172611e-18\n"
]
}
],
@@ -441,7 +441,7 @@
"source": [
"## Debugging and Profiling\n",
"\n",
- "DataFlowTasks comes with debugging and profiling tools which help\n",
+ "DataFlowTasks comes with debugging and profiling tools that help\n",
"understanding how task dependencies were inferred, and how tasks were\n",
"scheduled during execution.\n",
"\n",
@@ -483,7 +483,7 @@
{
"output_type": "execute_result",
"data": {
- "text/plain": "GraphViz.Graph(Ptr{Nothing} @0x00007fa755db7980, false)",
+ "text/plain": "GraphViz.Graph(Ptr{Nothing} @0x00007ff07d247c70, false)",
"image/svg+xml": [
"\n",
"\n",
"dag\n",
"\n",
- "\n",
- "\n",
- "30\n",
- "\n",
- "chol (1,1)\n",
- "\n",
- "\n",
- "\n",
- "33\n",
- "\n",
- "ldiv (1,4)\n",
- "\n",
- "\n",
- "\n",
- "30->33\n",
- "\n",
- "\n",
- "\n",
"\n",
- "\n",
+ "\n",
"31\n",
"\n",
"ldiv (1,2)\n",
"\n",
- "\n",
- "\n",
- "30->31\n",
- "\n",
- "\n",
- "\n",
- "\n",
- "\n",
- "32\n",
- "\n",
- "ldiv (1,3)\n",
+ "\n",
+ "\n",
+ "34\n",
+ "\n",
+ "schur (2,2)\n",
"\n",
- "\n",
- "\n",
- "30->32\n",
- "\n",
- "\n",
+ "\n",
+ "\n",
+ "31->34\n",
+ "\n",
+ "\n",
"\n",
"\n",
- "\n",
+ "\n",
"36\n",
"\n",
"schur (2,4)\n",
"\n",
- "\n",
- "\n",
- "33->36\n",
- "\n",
- "\n",
- "\n",
- "\n",
- "\n",
- "38\n",
- "\n",
- "schur (3,4)\n",
- "\n",
- "\n",
- "\n",
- "33->38\n",
- "\n",
- "\n",
- "\n",
- "\n",
- "\n",
- "39\n",
- "\n",
- "schur (4,4)\n",
- "\n",
- "\n",
- "\n",
- "33->39\n",
- "\n",
- "\n",
- "\n",
- "\n",
- "\n",
- "42\n",
- "\n",
- "ldiv (2,4)\n",
- "\n",
- "\n",
- "\n",
- "36->42\n",
- "\n",
- "\n",
- "\n",
"\n",
- "\n",
+ "\n",
"31->36\n",
"\n",
"\n",
"\n",
- "\n",
- "\n",
- "34\n",
- "\n",
- "schur (2,2)\n",
- "\n",
- "\n",
- "\n",
- "31->34\n",
- "\n",
- "\n",
- "\n",
"\n",
"\n",
"35\n",
@@ -611,199 +533,277 @@
"schur (2,3)\n",
"\n",
"\n",
- "\n",
+ "\n",
"31->35\n",
"\n",
"\n",
"\n",
+ "\n",
+ "\n",
+ "30\n",
+ "\n",
+ "chol (1,1)\n",
+ "\n",
+ "\n",
+ "\n",
+ "30->31\n",
+ "\n",
+ "\n",
+ "\n",
+ "\n",
+ "\n",
+ "33\n",
+ "\n",
+ "ldiv (1,4)\n",
+ "\n",
+ "\n",
+ "\n",
+ "30->33\n",
+ "\n",
+ "\n",
+ "\n",
+ "\n",
+ "\n",
+ "32\n",
+ "\n",
+ "ldiv (1,3)\n",
+ "\n",
+ "\n",
+ "\n",
+ "30->32\n",
+ "\n",
+ "\n",
+ "\n",
"\n",
- "\n",
+ "\n",
"40\n",
"\n",
"chol (2,2)\n",
"\n",
+ "\n",
+ "\n",
+ "34->40\n",
+ "\n",
+ "\n",
+ "\n",
+ "\n",
+ "\n",
+ "42\n",
+ "\n",
+ "ldiv (2,4)\n",
+ "\n",
"\n",
- "\n",
+ "\n",
"40->42\n",
"\n",
"\n",
"\n",
"\n",
- "\n",
+ "\n",
"41\n",
"\n",
"ldiv (2,3)\n",
"\n",
"\n",
- "\n",
+ "\n",
"40->41\n",
"\n",
"\n",
"\n",
- "\n",
- "\n",
- "34->40\n",
- "\n",
- "\n",
- "\n",
"\n",
- "\n",
+ "\n",
"45\n",
"\n",
"schur (4,4)\n",
"\n",
"\n",
- "\n",
+ "\n",
"42->45\n",
"\n",
"\n",
"\n",
"\n",
- "\n",
+ "\n",
"44\n",
"\n",
"schur (3,4)\n",
"\n",
"\n",
- "\n",
+ "\n",
"42->44\n",
"\n",
"\n",
"\n",
+ "\n",
+ "\n",
+ "36->42\n",
+ "\n",
+ "\n",
+ "\n",
"\n",
- "\n",
+ "\n",
"46\n",
"\n",
"chol (3,3)\n",
"\n",
"\n",
- "\n",
+ "\n",
"47\n",
"\n",
"ldiv (3,4)\n",
"\n",
"\n",
- "\n",
+ "\n",
"46->47\n",
"\n",
"\n",
"\n",
"\n",
- "\n",
+ "\n",
"43\n",
"\n",
"schur (3,3)\n",
"\n",
"\n",
- "\n",
+ "\n",
"43->46\n",
"\n",
"\n",
"\n",
"\n",
- "\n",
+ "\n",
"48\n",
"\n",
"schur (4,4)\n",
"\n",
"\n",
- "\n",
+ "\n",
"49\n",
"\n",
"chol (4,4)\n",
"\n",
"\n",
- "\n",
+ "\n",
"48->49\n",
"\n",
"\n",
"\n",
"\n",
- "\n",
+ "\n",
"47->48\n",
"\n",
"\n",
"\n",
"\n",
- "\n",
+ "\n",
"45->48\n",
"\n",
"\n",
"\n",
"\n",
- "\n",
+ "\n",
"50\n",
"\n",
"result\n",
"\n",
"\n",
- "\n",
+ "\n",
"49->50\n",
"\n",
"\n",
"\n",
+ "\n",
+ "\n",
+ "39\n",
+ "\n",
+ "schur (4,4)\n",
+ "\n",
+ "\n",
+ "\n",
+ "39->45\n",
+ "\n",
+ "\n",
+ "\n",
+ "\n",
+ "\n",
+ "33->36\n",
+ "\n",
+ "\n",
+ "\n",
+ "\n",
+ "\n",
+ "33->39\n",
+ "\n",
+ "\n",
+ "\n",
+ "\n",
+ "\n",
+ "38\n",
+ "\n",
+ "schur (3,4)\n",
+ "\n",
+ "\n",
+ "\n",
+ "33->38\n",
+ "\n",
+ "\n",
+ "\n",
+ "\n",
+ "\n",
+ "44->47\n",
+ "\n",
+ "\n",
+ "\n",
+ "\n",
+ "\n",
+ "32->38\n",
+ "\n",
+ "\n",
+ "\n",
"\n",
- "\n",
+ "\n",
"37\n",
"\n",
"schur (3,3)\n",
"\n",
- "\n",
- "\n",
- "37->43\n",
- "\n",
- "\n",
- "\n",
"\n",
- "\n",
+ "\n",
"32->37\n",
"\n",
"\n",
"\n",
- "\n",
- "\n",
- "32->38\n",
- "\n",
- "\n",
- "\n",
"\n",
- "\n",
+ "\n",
"32->35\n",
"\n",
"\n",
"\n",
- "\n",
- "\n",
- "44->47\n",
- "\n",
- "\n",
+ "\n",
+ "\n",
+ "38->44\n",
+ "\n",
+ "\n",
"\n",
"\n",
- "\n",
+ "\n",
"41->43\n",
"\n",
"\n",
"\n",
"\n",
- "\n",
+ "\n",
"41->44\n",
"\n",
"\n",
"\n",
- "\n",
- "\n",
- "38->44\n",
- "\n",
- "\n",
- "\n",
- "\n",
- "\n",
- "39->45\n",
- "\n",
- "\n",
+ "\n",
+ "\n",
+ "37->43\n",
+ "\n",
+ "\n",
"\n",
"\n",
- "\n",
+ "\n",
"35->41\n",
"\n",
"\n",
@@ -818,7 +818,7 @@
],
"cell_type": "code",
"source": [
- "dag = DataFlowTasks.plot_dag(log_info)"
+ "dag = GraphViz.Graph(log_info)"
],
"metadata": {},
"execution_count": 9
@@ -826,8 +826,8 @@
{
"cell_type": "markdown",
"source": [
- "The parallel trace plot shows a timeline of the tasks execution on available\n",
- "threads. It helps understanding how tasks were scheduled. The same window also\n",
+ "The parallel trace plot shows a timeline of the tasks' execution on available\n",
+ "threads. It helps in understanding how tasks were scheduled. The same window also\n",
"carries other general information allowing to better understand the\n",
"performance limiting factors:"
],
@@ -840,16 +840,16 @@
"output_type": "stream",
"text": [
"[ Info: Loading DataFlowTasks general plot utilities\n",
- "[ Info: Computing : 0.08894826600000001\n",
- "[ Info: Inserting : 6.122299999999999e-5\n",
- "[ Info: Other : 0.3619221029131041\n"
+ "[ Info: Computing : 0.08814919600000001\n",
+ "[ Info: Inserting : 5.968600000000001e-5\n",
+ "[ Info: Other : 0.25263780741795816\n"
]
},
{
"output_type": "execute_result",
"data": {
"text/plain": "Figure()",
- "image/png": "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efHFFxcvXixKfIY86u4S//tw79u3r9jtta60hFf3o/I4lAsUYJPJ9Mcff0RFRV24cEHuLAAAAChJZmbm6NGjR48effjw4R07duzYsWP//v1bt261XHvs2LGYmJjvv//+5MmTnTt3tnwtMzs7e9SoUb17946Li1uzZk18fLxWq502bZqst+PhLl++PHPmzIkTJ544cWLLli0HDx48evRosXnCwsJSU1P37t1r+XPt2rUqleq1116TPOz/d/78+cjIyKVLl27fvj0mJmb48OErV64UZXqw/tIPP/ywf//+a9euVa9e3YE3qUQlPEwmk+mtt97q2LHj6dOnV61adfbs2YCAgAEDBggh3nvvve7du7ds2TIyMtKyk3PBggX9+/ePj49ft27dmTNnDAbDpk2bSpnh008/7dKlS7t27SIjIw0Gg4NuaRksW7Zs//79P/zwQ1xcXPPmzdeuXSse/Qwp4e6ysD7c33zzzUNv71++uh+ax6GcvQBfu3YtODg4ODj41VdfDQoK6tevn7wfJgEAAKAEu3fvTklJse4+6tat27fffuvv72/5c+DAgdbjJ1u1amX5xuDhw4dv3bo1Y8YMtVothPDz8xs9evSmTZvMZrMct6AkUVFRGo0mIiLC8mezZs2KlgGL1q1bN23a1Po+/tdff+3du7e8BwOrVCohxJEjRyx3+OLFiy9duiTK9GD9pYEDBz799NN2vwk2KeFhio+PP3Xq1MyZM7VarRDCYDBMmjRp3759qampD44THR29bNkyy2Wj0ajT6bKysqS4AY702muvWR/i0NBQy8P6qGfIX95df/lw/+Wr+6F5HMrZC/Do0aNzcnIOHjyYnp6+fv36Xbt2zZs3T+5QAAAAeLiLFy9Wrly5aN8LDw9/6qmnLJfr1KljnW55zy2ESEhIUKvVjRo1sl7VtGnT3NzcpKQkSSLb4PLly3Xr1rV8O9QiKCjowdkGDhy4YcMGo9GYlJQUHR09dOhQCTM+ROPGjadPn/7ll1/6+/s/++yzn332WXp6uijTg/WXrF+LlVEJD5Pl/Mw9e/as9V8jRowQQty+ffvBcby9vb/55pt+/fq1bNmyatWqDy3JLqfow2oppaLEZ4go8e76y4f7L1/dD83jUM5+EqwDBw5MnTrV8jp88cUXu3btevDgQblDAQAA4OHc3NxKOF7voW9wPT09TSZTbm6u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4eF3Bnt6emq1WuOP77///uuvv75z585//vOff/7zn//xj38cPnxY6oGlLtrT07N5swcAoAVxCTQAAI6te/fuQoj6+vrev1CpVDt27GjVqtWdwaGhocZLo/ft2zd//vzWrVu/9NJLq1evzs7OvnLlyr59+6Slt27dCgoKkrprAACcAw0wAACOLTw8fPz48XPnzi0oKKipqcnMzJw8efLVq1fvGtynT5+ffvpJ+nd9ff3SpUv/53/+59q1ayUlJRkZGUqlMioqSlp68uTJPn36tNA+AADQImiAAQBweB9//PGDDz44aNCgoKCgUaNGPfHEE0uXLr1r5LBhww4ePChdBT148OC33377z3/+c1hYWHh4+PLly1esWBEZGSlF7tu3Ly4uruX2AQCA5sdzgAEAcBJlZWXnz5/v0KFDmzZtGgmLjo7+4IMPRo8ebXzVhQsXvLy8OnfubLzguaysrHPnzj///HO7du2aPW8AAFoKDTAAAK5l9erVO3fu3LRpUyMxK1asOHjw4GeffdZSSQEA0BJogAEAcC06nW7QoEEpKSkPP/zwXQPq6ur69u27c+fO9u3bt3BuAAA0KxpgAABczr///e+ysrJ+/frddWlxcfGFCxcGDx7cwlkBANDcaIABAAAAAC6BWaABAAAAAC6BBhgAAAAA4BJogAEAAAAALoEGGAAAAADgEmiAAQAAAAAugQYYAAAAAOASaIABAAAAAC6BBhgAAAAA4BJogAEAAAAALoEGGAAAAADgEmiAAQAAAAAugQYYAAAAAOASaIABAAAAAC6BBhgAAAAA4BJogAEAAAAALoEGGAAAAADgEmiAAQAAAAAugQYYAAAAAOASaIABAAAAAC6BBhgAAAAA4BJogAEAAAAALoEGGAAAAADgEmiAAQAAAAAugQYYAAAAAOASaIABAAAAAC7BXe4EACGEWLdu3a5du4QQb731Vt++fS1bSc+ePa9fv/7pp5+OGzfO+jAAuJekpKRz587dddHIkSNfeOGF5q4z//f//t+DBw8af/Tw8OjUqdOYMWMeffTR5thcI7766qstW7b07Nnzvffea+FNA2gS2QuXXPLz87/66qvjx4/X1tZ27dp12rRpQ4YMkTspyIkGGHbhL3/5S1FRkRDC19fX/AZ40aJF2dnZkyZNmj17thDi1q1bZWVlarW68Vc1CGuwEgD4VT/++OP+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PT2VSqUQws3NrcE9w0FBQcOHDxdCbN++XfzSAJt++WfUYCXt27f/7W9/K4SQEti5c6cQ4ldvEQEAc7z77ruDBg0ynvqQfnz77belH2/durVjxw6DwdCjR4/Q0NB///vfI0eOVCgUp06d+umnn+66QoVC4ebm5ubmJtWxysrK9evXS+dm9+/ff+PGjVatWq1YseI3v/nNY489lpSUJH6piub43e9+9/TTT48cOfKpp54SQkingDIzM6urq9u1a7d06dJu3brNnj1bqpkS4zQzn3zyye7du1955ZUTJ07885//vFcDD8D+WVO4mloTkpKSBg8e3KdPn7/+9a9CiMzMTLVabU5hfPPNN7/66qsGU1VVVVVJ//Dz87vX3kVERPzrX/8qKCgYMGDA5cuXb926JYS4efOmuOMQsZE0cnNzb9y44efnt3z58qioqDfffNP0Vj4zq7FxFzgWbQE0wJBTTU3Nli1bhBDBwcGbNm3atWtXZGSk+OW7NyHEhQsXhBBhYWFubm5CCIVC8de//nXlypVRUVGNrzk+Pl4IsX37dp1OJ13Z8txzz5mT0uTJk4UQ0rV8UtEx84UA0LgHHnhACCFVszt/FEJI0wGePHmyf//+/fv3f+qpp6RutrCw8K4rHDlyZG1tbW1tbVVV1fbt2z09PdPS0qSDKmlV4eHh/v7+UvBDDz0khLh27ZrxEpvGSdVYCCFdBmmaSVRUlHQ3nXG1kvDwcOlCni1btkyePDk8PPzNN9+sqamRDiIBOCJrCldTa4KxnkiX7On1+kuXLplTGKUbNBro3Lmz9I9Lly7da++Cg4NPnz49Y8aM++67r3///unp6feKbCQNaVHHjh19fX2lYNOztY1U49u3b991FzgWbW5MggU5bdmyRToUW7t27dq1a43ju3fvVqlUQUFB9913nxBCpVI1dc2jR4/28/M7evRoRkZGeXl5r169unTpYs4Lx48f/+abb545c+b777+/fPnyww8/3L1796ZuHQAsEBAQIIQYOnRogxvk7rx9owEPD49hw4b17dt37969u3fvHj169P333y+EkM5mSKTZX318fIwzrxhPztTU1JiZYVBQkHFVEtNNCCE2bNiwcOHCzZs3Z2RkHD169J///OegQYOuXLkSGBho5iYAOJbGC1eTaoKxthgLS0hIiDmF8a5PD2nXrl1gYGBFRcV33303aNAg47j0YKTu3bsfPnx4165dM2bM8PT0/P3vfx8XF3f48OF33323qbuZmZkphKioqDAOlpeXG/9tTjVusAscizY3vpSFnKTrnzt16vSsCU9PT41G8/333wshevToIYS4cOFCfn6+EOLSpUvBwcE+Pj6mU7Notdo71+zj4zN27FiDwSDdpnLX659NGVcSEBAgTXYqPVyEr9wAtBip4l2+fHnYsGHDhw8fMGDA+fPnCwsLf/XJcBqNZvfu3dJ8LdKsKj179lQoFNeuXfv666+FEHq9/uOPP5bG/f39FQqFECI7O1sIUVpaarzr5Ff16tVLCHH8+PF//etfQoji4mLpHIXk66+/HjFixIcffrhw4cL9+/cfPHhQqVRqNJrDhw83+b0A4CAaKVxNrQmffPKJdHX0Rx99JISIjIwMDAy0uDAqFArpUu3U1FRpvkAhxPHjxz/55BOdTjdw4EAhhDSJzEMPPZSUlDRo0CCplW1AOkRsJA3pHuPi4uJdu3YJIUpKSoxXMopGq/G9zoRzLNrcOAMM2dy8efOHH34QQvzxj3+UrliWjBs3bseOHV999dXUqVN79uwpPbho1KhRjz/++MGDB6uqqh5//PGePXuKX76N27JlS2Rk5FtvvdVg/c8999yXX355/vx5hULRSAN850omT578zTffXLx4UaFQUHQAtJj4+Pi//OUvZ8+eHTx48MMPP5yXl3f69OnevXsbH6TRgHTZs+nI/fff/8orrwghOnXq9PLLL69evfqll15atWpVSUnJzz//LIRYsmSJt7d3dHT0kSNH3nnnnU8//bSwsND8e3QHDhw4cODAvXv3jho1Kjo6+tSpU8a77IQQkZGROTk5Op3uzJkzXbp0OXXqlDRR6q+ewQbguBopXE2tCVu3bu3Ro4enp+epU6eEENI0UU0tjKbeeeedzZs3nzx5Mj4+Pjg42N/f/+LFiwaDoX379n/4wx+EEOHh4UKIw4cPx8XF1dTUSJ25sSSaHiK++uqr90rj/vvv/+1vf5uTk/PMM888+uijp0+fNj0b3Eg1biRzjkWbFWeAIZv09HStVivN/2w6Pn78eCFEdnb29evXhRCfffbZ1KlTtVrt7t27KyoqJk6cuGnTJun0RUJCQmho6JUrV0wfm2T0xBNPSNPfP/7449ItK3d150pGjBghXXodExMjVUYAaAFeXl67du2K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"
+ "image/png": "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v//+vXv3jhw5cvXq1c6YfwV33HFHbm7uunXrHnzwwWpNCACAi7EHGAAAx3v11VczMzOFEKdPn37jjTeEEEuXLm3UqJEQonXr1jKHAwBArSjAAAA4XmRkpO3G/v37bQV48ODBbdq0sY9QVFS0cuXKgwcPZmdnh4SEjBw5ctSoUba7zGbz119/vXv37qysrKZNm44dO9Y+N7szZ8689dZbQog5c+ZUd4dtJYsWQhQUFMybNy8hIeHOO++cOnVqeHi4/a5Nmzb9/PPPKSkp7du3f+qpp8o/HAAAFIECDACAq0mSNGrUqL1799qHrF69eunSpTNnzhRC/POf/9ywYYP9rm+++WbJkiX/+te/7EPS09OHDx9+6dKlF154obrt93aLfuKJJ2x/PvbYY1euXBFC7Nq164cfftizZ4+t6L7wwgvLly8XQmi12t27d69cuXL9+vWDBg2q/qMHAEA2XAUaAABX+/333/fu3avT6bZt25acnDx58mQhxKpVq4QQV69etbXf7du3Z2RkvPbaa0KIpUuX2qctLS0dM2bMpUuXJkyYsGjRIgcu2kaSpF27dsXFxd15551paWkLFiwQQiQmJr7//vsajWbjxo03btyYMmVKYWHhc889J0lSbZ8LAABciD3AAAC4Wnh4+C+//GI0GiMiIv7444+srCwhREZGhhDCYrHYxvn000+zs7MnTpw4cuRIIYS9as6YMePYsWOdO3desWKFYxdts3DhwgEDBggh3nnnnSFDhvz8888mk2n79u1Wq7VDhw4hISHnz58fPHjwihUrTp8+ferUqY4dO9bmqQAAwJUowAAAuFr9+vW3bNnyySefJCQkSJKk0WjsdzVr1mzMmDFr167dvHnz5s2bdTrdPffcs2TJEq32fw/asl1c+vTp05cvX27VqpUDF23ToUMH241OnToJISwWy+XLly9evCiESEpK6t27d/mRL1y4QAEGACgIBRgAAFfbuXPnpEmTfHx8XnzxxcjIyPj4+Dlz5tjv/f777+fNm7d+/fqff/75xIkTsbGx99xzzx9//GG7t2/fvpIkHT58+Pnnn9+0aZNjFy3K7Q227RwWQtStWzcgIEAIMWjQoOeee678yLRfAICycA4wAACuFhcXJ4To0KFDTEzMPffcs2fPHvtd69atu//++5cuXTpv3rxjx44dP35cq9WaTKaEhATbCO+//77tlODt27dv27bNgYu2WbFihe0w7A8++EAIERoaGhwcbLvU1tWrV6Oiov7xj3/07dv30qVLFy5c8PHxqdkzAACALNgDDACAqzVr1kwIER8fHxkZWVRUFB8fL/57lm+LFi32799vsVjOnj0bERFx+vRpSZJ8fX3tV3vW6XQ9e/YcMWLETz/99Pzzz0dFRd2uhW7cuLHCXdu3b69k0TZbt25t3769wWCw7XOeN2+eEGLs2LGLFy/+888/+/fv37Fjx7i4uDNnznTv3n3KlClOeHoAAHAW9gADAOBq48ePf/DBB4UQBw8e9PX1tV32OSUlJTExsVu3bj/++GPbtm1/++23VatWJSQkdOjQYd26dUFBQeXn8MYbb3h5eV24cMH200S1X/SpU6dsI7z22mu5ubl//PFHQEDA4sWLo6OjhRB6vX7nzp0DBw6Mj4//4osvLl68OG7cuG3btt18CjEAAO5MYzKZ5M4AAIAaZWVlabXawMDAW95bUFCQkZFRv359f39/Fy9aCJGamhocHGy/8pZdSUlJenp6SEiIt7e3w1MBAOBsFGAAAAAAgCpwCDQAAAAAQBUowAAAAAAAVaAAAwAAAABUgQIMAAAAAFAFz/wd4A8++CAhISE8PFzuIAAAAAAAp/jrr786deo0Y8aMqk/imQX4+PHjV69ebdGihdxBAAUrLCzU6/VeXp75LgG4Rl5enr+/Pz+WC9SYJElFRUV+fn5yBwEUzGQyWSwWo9EodxDH++uvv6xWa7Um8cyvtk2aNAkPD4+JiZE7CKBgaWlpAQEBBoNB7iCAgiUnJ4eFhVGAgRozm80ZGRmhoaFyBwEUrKCgwGQyBQUFyR3E8WJiYiRJqtYknAMMAAAAAFAFCjAAAAAAQBU88xBoAAAA2MXGxsbGxsqdoiY4BxioPQ87B3jAgAEDBgyo8eTsAQYAAPBwyi3AWq2W9gvUko+Pj8e039q/m7EHGAAAwPMNGDCA64MCULrav4+xBxgAAAAAoAoUYAAAAACAKlCAAQAAAACqQAEGAAAAAKgCBRgAAAAAoAoUYAAAAACAKvAzSAAAAGrX6uVtZZK1ZtOef2OIl07j2DwOsCFaJK6u4bQjPxOdH3Vompp46ZeXtlzcUrNpF/dbPKzlMMfmcbb58+e/8cYbNZv29ddfnz9/vmPzyGnRIrFgQQ2nnTdPLFrk0DSehj3AAAAAAABVYA8wACjMR999dEO6IXcKVInZbPb29q7iyA01Daf/c7pT80Ap/rp04dTWz+roLI6a4eXjh8N73OeouQGAclGAAUBhskX2T9af5E6BqvESospHlT6keciZUaAkZlNpp4zNYSLVUTOMLSgVggIMABwCDQAAAJeYNm3a9u3bqztVdHT07t27nZHHIRl2794dHR0thLBYLD/99FN8fLxrozlLzVaW27KvpsqVlpbGxMSMGTMmIyOjxstyhy22PFm2THd+OVCAAQAA4AqbNm06e/ZsdafasGHD+fPnnZHHIRnOnz+/YcMGIURxcfHIkSM/+OAD10ZzlpqtLLdlX02V+/TTT5csWRIREeHj41PjZdm3luXLl7/55ps1no+juGzLLP943fnlwCHQAAAAQG0ZDIZvv/22ZcuWcgdBzZ09e7Znz56LFy92yNyOHz9eUFDgkFnVhsu2zPKP151fDhRgAAAAONipU6c2b96cmpratWvX8ePHl78aXGJi4qZNmzIzM6OiooYOHWoffvbs2U2bNl29erVdu3bjxo2rW7euHMGr5ODBgzt27NBoNEOGDLEP9PLy0uv1devW3bZtm4+PT1RUlP2uLVu21KlTZ9CgQXKE/V8Wi2Xt2rVHjx7V6XT9+/d/8MEH7XdVd2V9++23ffv2bdGihe3PgwcPlpaWRkZGCiHWrl179913Z2Zm/vDDDy+//HJQUJALH2JFt1xNNikpKevWrTt79mzz5s0nTJjQsGFDIcR//vOfM2fOpKenf/XVV6NHj/bz8xNCxMXFbd26NTMzs3Hjxo8++mhERIRtDpU8CTZbt269ePFiSUnJV199NW7cuNrsUq4l+5YphFi7dm2PHj1KSko2bdp0/fr1e++994EHHrCNVskWcsunS/zf1d2jR48Kj9e+UHH7V3cleZyHQ6ABAADgSGvWrOnevbvtGNro6OioqCiL5X+vaL1r165Ro0Zdvnw5NjZ22LBhn3/+uW34xo0bu3bt+s0336Smpr722mtdunS5ePGifI+gMkuWLOnfv/+2bdtOnDhx//33//jjj/a7nnvuuV27dsXGxj766KNlZWW2gTk5OQ899NCpU6dkyiuEEFardcSIERMnTjx9+nRcXNzIkSPnzZtnu6sGK2vSpElxcXH2ma9cufK9996z3X7uueeWL1/ep0+fNWvWlJaWuvAhVlTJajp8+HDnzp0//vjjjIyMDz74oFu3btevXxdCHDx48OLFi2lpaevWrSsqKhJCfPbZZ3379t20aVN6evrnn3/eqVOnEydO2GZSyZNgs2/fvitXrtiqo9lsdsVjvj3blmm78dFHHw0fPvzPP//cu3fv0KFDV6xYISrdQm73dIn/u7r3799f4fHaF1rJq/t2eZxKAQVYkqTff/9969at586dkzsLAAAAKpOXlzdt2rRp06YdOXJk586dO3fuPHDgwLZt22z3/vrrr3Fxcf/+979PnDjRv39/22mZRUVFU6dOHTFiRGJi4tq1a5OSkry8vF5++WVZH8etXbp0acGCBbNmzYqPj//5558PHTp07NixCuOMHTs2MzNz3759tj/XrVun0Wgee+wxl4f9/86ePbtly5Yvv/xyx44dcXFxkyZNWrVqlajRyvpbX3zxxYEDB65cuRIaGurEh1SpSlaTJElPP/103759T506tXr16tOnTzdt2vTRRx8VQrz66quDBw/u3Lnzli1bbDs5ly9fPmbMmKSkpPXr1//xxx++vr6bNm2qYoZ33nlnwIABvXr12rJli6+vr5MeaQ18/fXXBw4c+OKLLxITEzt27Lhu3Tpx+y2kkqfLxr66P/3001s+3r99dd8yj1O5ewG+cuVKz549e/bs+cgjj7Rv33706NHy/jMJAAAAldizZ09GRoZ999GgQYM+++yzkJAQ25/jxo2zHz/ZpUsX2xmDR44cuX79+vz587VarRCifv3606ZN27Rpk9Va5Z8Rc5WtW7fqdLqYmBjbnx06dChfBmy6du3arl07+/f4H3/8ccSIEfIeDKzRaIQQR48etT3hK1asuHDhgqjRyvpb48aNu/vuux3+EKqlktWUlJR08uTJBQsWeHl5CSF8fX1nz569f//+zMzMm+cTGxv79ddf225bLBZvb+/8/HxXPABneuyxx+yrOCoqyrZab7eF/O3T9ber+29f3bfM41TuXoCnTZtWXFx86NCh7OzsDRs27N69e+nSpXKHAgAAwK2dP3++QYMG5ftedHT0XXfdZbvdrFkz+3Dbd24hxMWLF7VabevWre13tWvXrqSkJDXVYb+E7CiXLl0KDw+3nR1q0759+5tHGzdu3MaNGy0WS2pqamxs7MSJE12Y8RbatGkzb968Dz74ICQk5N5773333Xezs7NFjVbW37KfFiuj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sTU1NQcPHnz99df/9Kc/SZFSs/3nP/+5TT4GAADaAtcAAwDg1M6ePXvgwIE1a9Zs2rRJqVRWV1fv37//448/fuedd06fPn3lyhW9Xj9v3rwhQ4YcP378k08+OXnyZPfu3Z955plbLi0nJ2fQoEHGJWdlZWVkZGzfvn3fvn2zZs3avHmzMTImJiY7O7st1hAAgLZCAwwAgFNLSEjw8fERQjz88MNCiKeffloulwshhg4dKoSor6//8ccff/jhh8WLF3t6egoh/P39FyxYsG/fvsrKypuX9tNPP/Xs2VP6WyaTCSEOHjxYV1cnhFi1atWZM2eMkT179vzpp5/svXYAALQlrgEGAMCp+fv7S39IfW9AQIDpQyHE+fPnhRATJ06UGlohRFNTkxCivLw8NDS02dJKS0ulzlkIcc8997z55pvvvPNORkZGTEzMqFGjkpKSOnbsKD3bqVOnxsbGmpqaoKAg+60dAABtiQYYAID2zdfXVwiRnp7erN3t0aPHzcHe3t5ardb48K233nr++ed37dr173//+09/+tN777139OhRqQeWumhvb2/7Zg8AQBviFGgAANq3Pn36CCGampoe/JlKpdq5c2eHDh1uDlYoFMZTow8cOPDmm2926tTp2WefXbNmTU5OzpUrVw4cOCA9e/369ZCQEKm7BgDANdAAAwDQvvXo0WPixImvvvpqYWFhQ0PD3r17p06devXq1VsGDxw48Mcff5T+bmpqWr58+d///veysjKlUpmZmSmXy6OioqRnf/jhh4EDB7bROgAA0CZogAEAaPc++OCDe++9NzY2NiQkZOzYsY8++ujy5ctvGTly5MjDhw9LZ0EPHz785Zdf/tOf/hQeHt6jR48VK1asXLkyMjJSijxw4EB8fHzbrQMAAPbHfYABAHARlZWVFy5c6N69e+fOnVsIi46O/vOf/zxu3Djjqy5evOjj49OrVy/jCc+VlZW9evX66aefunbtave8AQBoKzTAAAC4lzVr1uzatWvLli0txKxcufLw4cP/+te/2iopAADaAg0wAADuRafTxcbGpqWl9evX75YBN27cGDRo0K5du7p169bGuQEAYFc0wAAAuJ3//Oc/lZWVgwcPvuWzJSUlFy9eHD58eBtnBQCAvdEAAwAAAADcArNAAwAAAADcAg0wAAAAAMAt0AADAAAAANwCDTAAAAAAwC3QAAMAAAAA3AINMAAAAADALdAAAwAAAADcAg0wAAAAAMAt0AADAAAAANwCDTAAAAAAwC3QAAMAAAAA3AINMAAAAADALdAAAwAAAADcAg0wAAAAAMAt0AADAAAAANwCDTAAAAAAwC3QAAMAAAAA3AINMAAAAADALdAAAwAAAADcAg0wAAAAAMAt0AADAAAAANwCDTAAAAAAwC3QAAMAAAAA3AINMAAAAADALdAAAwAAAADcgqejEwCEEGL9+vW7d+8WQsyfP3/QoEGWLaR///7l5eUfffTRhAkTrA8DgNtJSUk5d+7cLZ8aM2bMM888Y+8687//+7+HDx82PvTy8urZs+fjjz/+wAMP2OPtWrB58+avv/66f//+r7/+ehu/NYBWcXjhcpSCgoLNmzefOHGisbHxnnvumT59+ogRIxydFByJBhhO4S9/+UtRUZEQwt/f3/wGeMmSJTk5OVOmTHnppZeEENevX6+srFSr1S2/qllYs4UAwC/69ttvDx48eMunFArFM888Y2Y5stj+/fszMzObDS5btmzp0qVt3IieOHFi69at1dXVNMCAk3N44XKIpUuX/uUvf9HpdNLDw4cPf/LJJ3PmzFm5cuUvvpZdRFdFAwzHKywslLpfIcSXX365cuVKb29vc1549uzZgwcPDh48WHr40UcfqdVq48PbaRbWbCEA8IveeuutyspKIcSpU6f+/Oc/CyHeeeedbt26CSHuueceYXY5slJ0dPTChQuFECqVauvWrbm5uX/84x+feeYZKRMAMOUkhast7dq1a+nSpUKIESNGzJkz54477ti6dWt6evo///nPYcOGPf300y2/nF1EV0UDDMf79NNPhRDDhw8vKChQqVR79ux5/PHHTQMKCgo2btx47tw5hUIxadIk6dlNmzZJZ/J8//33H3/88TPPPJOVlVVfXx8REfHFF18cOnTooYceeuGFF6QlLFiwoLKycsqUKePGjTOG/epXv2q2kMuXL586derBBx80/tT31ltvFRUVJSQkuNjpQACsER8fL/2Rm5sr7UeOGTOmd+/exgDTOqNWq+fMmSOEWLx48fr167///vt777339ddfb2xsXL58+ZkzZ/r06fPGG28oFArptV999VVmZubVq1f79u2bnJxsuthmunXrNmXKFOnvxx9/PCIiQq/Xnz9/3tgAnz59evXq1adOnQoMDBww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z54dPnx4v3798vPzT58+/eCDDxpvpNGMdNqz6cgdd9wxc+ZMIUTPnj1nzJixZs2aZ599dvXq1Uql8qeffhJCLFu2zNfXNzo6+vvvv3/llVc++uij8+fPm3+N7rBhw4YNG7Z///6xY8dGR0efOnXKeJWdECIyMjI3N1en0505c+buu+8+deqUNFHqLx7BBtB+tVC4WlsTtm/f3rdvX29v71OnTgkhpGmiWlsYTb3yyivbtm374YcfEhMTQ0NDAwMDi4uLDQZDt27d/vCHPwghevToIYQ4evRofHx8Q0OD1JkbS6LpLuLvfve726Vxxx13/PrXv87NzX3yyScfeOCB06dPmx4NbqEat5A5+6J2xRFgOMzWrVu1Wq00/7Pp+MSJE4UQOTk55eXlQoh//etfSUlJWq12z5491dXVkyZN2rJli3T4Ijk5WaFQXLlyxfS2SUaPPvqoNP390KFDpUtWbunmhYwePVo69TomJkaqjADQBnx8fHbv3h0XF3f06NE1a9YUFRVNnTp1x44dUsVrgYeHR0RExNSpU/fv3y9N2iyEeO+99958882AgIC9e/eeOnUqKioqMzNz+PDhQoi0tLSePXsKIYqKip566inp/pZm+uyzz8aOHavT6QoLC/v27Ttt2jTjUwMGDPj000+joqKOHDmyadOm48eP33fffZ999pl0BiAAl9RC4WptTVixYoVKpTp16lRISMg//vEPqbxYXBiFEB06dMjLy3v++edDQ0MrKysvXrzo6emZmJiYm5srnSzzzDPPSPP87d+/39/fX5qz+urVqydOnBD/vYvYchobN2587LHHtFptYWHh/fffP3v2bNM0WqjGt8O+qF1xH2C0D3q9/urVq507d775jJeamho/Pz8vLy9rlt9sIWPGjNm7d++77747b948axYLABa4cePGtWvXFAqFlZVNUlpaGhAQcPM8qEqlslOnTj4+PhYss6Gh4caNG9L8WDerq6urqKiQjrdYsHAA7VELhavlmmC8D/DJkyfvueee0tJShUJxc39rZWG8cuWKRqPp3r276QxekuvXr8vlcmmOg5s120VseTU1Gk2nTp0WL178t7/9bdasWR9++KFpwO2q8S2xL2o/NMDAf7l8+XJubu6cOXNkMtn58+e7dOni6IwAAABclmkD3Lt3b0en02rnz5+Xpn1+5513kpKSDhw4kJSU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"
},
"metadata": {},
"execution_count": 10
@@ -858,7 +858,7 @@
"cell_type": "code",
"source": [
"using CairoMakie # or GLMakie in order to have more interactivity\n",
- "trace = DataFlowTasks.plot_traces(log_info; categories=[\"chol\", \"ldiv\", \"schur\"])"
+ "trace = plot(log_info; categories=[\"chol\", \"ldiv\", \"schur\"])"
],
"metadata": {},
"execution_count": 10
@@ -875,13 +875,13 @@
{
"cell_type": "markdown",
"source": [
- "We'll cover in details the usage and possibilities of the visualization in the\n",
+ "We'll cover in detail the usage and possibilities of the visualization in the\n",
"documentation.\n",
"\n",
"Note that the debugging & profiling tools need additional dependencies such as\n",
"`Makie` and `GraphViz`, which are only meant to be used interactively during\n",
"the development process. These packages are therefore only considered as\n",
- "optional depdendencies; assuming they are available in your work environment,\n",
+ "optional dependencies; assuming they are available in your work environment,\n",
"calling e.g. `using GraphViz` will load some additional code from\n",
"`DataFlowTasks` (see also the documentation of `DataFlowTasks.@using_opt` if\n",
"you prefer an alternative way of handling these extra dependencies)."
@@ -907,7 +907,7 @@
"\n",
"This approach is pursued in\n",
"[`TiledFactorization.jl`](https://github.com/maltezfaria/TiledFactorization),\n",
- "where all the above mentioned building blocks are combined with the\n",
+ "where all the above-mentioned building blocks are combined with the\n",
"parallelization strategy presented here to create a *pure Julia*\n",
"implementation of the matrix factorizations. The performances of this\n",
"implementation is assessed in the following plot, by comparison to MKL on a\n",
@@ -939,11 +939,11 @@
"file_extension": ".jl",
"mimetype": "application/julia",
"name": "julia",
- "version": "1.8.2"
+ "version": "1.9.2"
},
"kernelspec": {
- "name": "julia-1.8",
- "display_name": "Julia 1.8.2",
+ "name": "julia-1.9",
+ "display_name": "Julia 1.9.2",
"language": "julia"
}
},
diff --git a/docs/readme/README.jl b/docs/readme/README.jl
index 100fd8d4..2ee47172 100755
--- a/docs/readme/README.jl
+++ b/docs/readme/README.jl
@@ -75,7 +75,7 @@ fetch(result)
# represented as a Directed Acyclic Graph. Reconstructing the `DAG` (as well as
# the parallalel traces) can be done using the `@log` macro:
-using GraphViz # triggers additional code loading, powered by Requires.jl
+using GraphViz # triggers additional code loading, powered by weak dependencies (julia >= 1.9)
log_info = DataFlowTasks.@log let
@dspawn fill!(@W(A), 0) label="write whole"
@dspawn @RW(view(A, 1:2)) .+= 2 label="write 1:2"
@@ -83,14 +83,14 @@ log_info = DataFlowTasks.@log let
res = @dspawn @R(A) label="read whole"
fetch(res)
end
-dag = DataFlowTasks.plot_dag(log_info)
+dag = GraphViz.Graph(log_info)
DataFlowTasks.savedag("example_dag.svg", dag) #src
#md # ![](example_dag.svg)
# In the example above, the tasks *write 1:2* and *write 3:4* access
# different parts of the array `A` and are
-# therefore independant, as shown in the DAG.
+# therefore independent, as shown in the DAG.
#-
@@ -111,12 +111,12 @@ DataFlowTasks.savedag("example_dag.svg", dag) #src
# in this simplified version). At each step of the algorithm, we do a Cholesky
# factorization on the diagonal tile, use a triangular solve to update all of
# the tiles at the right of the diagonal tile, and finally update all the tiles
-# of the submatrix with a schur complement.
+# of the submatrix with a Schur complement.
#
# If we have a matrix A decomposed in `n x n` tiles, then the algorithm will
# have `n` steps. The `i`-th step (with `i ∈ [1:n]`) will perform
#
-# - `1` cholesky factorization of the (i,i) block,
+# - `1` Cholesky factorization of the (i,i) block,
# - `(i-1)` triangular solves (one for each block in the `i`-th row),
# - `i*(i-1)/2` matrix multiplications to update the submatrix.
#
@@ -140,7 +140,7 @@ function cholesky_tiled!(A, ts)
T = [view(A, tilerange(i, ts), tilerange(j, ts)) for i in 1:n, j in 1:n]
for i in 1:n
- ## Diagonal cholesky serial factorization
+ ## Diagonal Cholesky serial factorization
cholesky!(T[i,i])
## Left blocks update
@@ -173,7 +173,7 @@ function cholesky_dft!(A, ts)
T = [view(A, tilerange(i, ts), tilerange(j, ts)) for i in 1:n, j in 1:n]
for i in 1:n
- ## Diagonal cholesky serial factorization
+ ## Diagonal Cholesky serial factorization
@dspawn cholesky!(@RW(T[i,i])) label="chol ($i,$i)"
## Left blocks update
@@ -204,7 +204,7 @@ end
# The code below shows how to use this `cholesky_tiled!` function, as well as
# how to profile the program and get information about how tasks were scheduled:
-## DataFlowTasks environnement setup
+## DataFlowTasks environment setup
## Context
n = 2048
@@ -236,7 +236,7 @@ err = norm(F.L*F.U-A,Inf)/max(norm(A),norm(F.L*F.U))
# ## Debugging and Profiling
#
-# DataFlowTasks comes with debugging and profiling tools which help
+# DataFlowTasks comes with debugging and profiling tools that help
# understanding how task dependencies were inferred, and how tasks were
# scheduled during execution.
#
@@ -259,18 +259,18 @@ log_info = DataFlowTasks.@log cholesky_dft!(A ,ts);
# In this more complex example, we can see how quickly the DAG complexity
# increases (even though the test case only has 4x4 blocks here):
-dag = DataFlowTasks.plot_dag(log_info)
+dag = GraphViz.Graph(log_info)
DataFlowTasks.savedag("cholesky_dag.svg", dag) #src
#md # ![](cholesky_dag.svg)
-# The parallel trace plot shows a timeline of the tasks execution on available
-# threads. It helps understanding how tasks were scheduled. The same window also
+# The parallel trace plot shows a timeline of the tasks' execution on available
+# threads. It helps in understanding how tasks were scheduled. The same window also
# carries other general information allowing to better understand the
# performance limiting factors:
using CairoMakie # or GLMakie in order to have more interactivity
-trace = DataFlowTasks.plot_traces(log_info; categories=["chol", "ldiv", "schur"])
+trace = plot(log_info; categories=["chol", "ldiv", "schur"])
save("cholesky_trace.svg", trace) #src
#md # ![](cholesky_trace.svg)
@@ -281,13 +281,13 @@ save("cholesky_trace.svg", trace) #src
#-
-# We'll cover in details the usage and possibilities of the visualization in the
+# We'll cover in detail the usage and possibilities of the visualization in the
# documentation.
#
# Note that the debugging & profiling tools need additional dependencies such as
# `Makie` and `GraphViz`, which are only meant to be used interactively during
# the development process. These packages are therefore only considered as
-# optional depdendencies; assuming they are available in your work environment,
+# optional dependencies; assuming they are available in your work environment,
# calling e.g. `using GraphViz` will load some additional code from
# `DataFlowTasks` (see also the documentation of `DataFlowTasks.@using_opt` if
# you prefer an alternative way of handling these extra dependencies).
@@ -305,7 +305,7 @@ save("cholesky_trace.svg", trace) #src
#
# This approach is pursued in
# [`TiledFactorization.jl`](https://github.com/maltezfaria/TiledFactorization),
-# where all the above mentioned building blocks are combined with the
+# where all the above-mentioned building blocks are combined with the
# parallelization strategy presented here to create a *pure Julia*
# implementation of the matrix factorizations. The performances of this
# implementation is assessed in the following plot, by comparison to MKL on a
diff --git a/docs/readme/cholesky_dag.svg b/docs/readme/cholesky_dag.svg
index 8c99cb5a..c5874fdb 100644
--- a/docs/readme/cholesky_dag.svg
+++ b/docs/readme/cholesky_dag.svg
@@ -4,322 +4,322 @@
-