doc: let's agree on a plan

closes #305
This commit is contained in:
Benoit Chevallier-Mames
2021-09-08 11:38:49 +02:00
committed by Benoit Chevallier
parent 5041e42978
commit bcc146bd6e
25 changed files with 84 additions and 26 deletions

View File

@@ -54,7 +54,7 @@ Once the MLIR is prepared, the rest of the stack, which you can learn more about
Here is the visual representation of the pipeline:
![Frontend Flow](../_static/compilation-pipeline/frontend_flow.svg)
![Frontend Flow](../../_static/compilation-pipeline/frontend_flow.svg)
## Tracing
@@ -67,7 +67,7 @@ def f(x):
the goal of tracing is to create the following operation graph without needing any change from the user.
![](../_static/compilation-pipeline/two_x_plus_three.png)
![](../../_static/compilation-pipeline/two_x_plus_three.png)
(Note that the edge labels are for non-commutative operations. To give an example, a subtraction node represents `(predecessor with edge label 0) - (predecessor with edge label 1)`)
@@ -140,7 +140,7 @@ After the entire dataset is evaluated, we assign a data type to each node using
Here is an example, given this operation graph where `x` is encrypted:
![](../_static/compilation-pipeline/two_x_plus_three.png)
![](../../_static/compilation-pipeline/two_x_plus_three.png)
and this dataset:
@@ -218,7 +218,7 @@ x = EncryptedScalar(UnsignedInteger(2))
#### Corresponding Operation Graph
![](../_static/compilation-pipeline/two_x_plus_three.png)
![](../../_static/compilation-pipeline/two_x_plus_three.png)
### Topological Transforms
@@ -268,7 +268,7 @@ y = EncryptedScalar(UnsignedInteger(1))
#### Corresponding Operation Graph
![](../_static/compilation-pipeline/forty_two_minus_x_plus_y_times_two.png)
![](../../_static/compilation-pipeline/forty_two_minus_x_plus_y_times_two.png)
### Topological Transforms

View File

@@ -24,15 +24,15 @@ Any computation where there is a single variable integer input and a single inte
The `quantized_sin` graph of operations:
![](../_static/float_fusing_example/before.png)
![](../../_static/float_fusing_example/before.png)
The float subgraph that was detected:
![](../_static/float_fusing_example/subgraph.png)
![](../../_static/float_fusing_example/subgraph.png)
The simplified graph of operations with the float subgraph condensed in an `ArbitraryFunction` node:
![](../_static/float_fusing_example/after.png)
![](../../_static/float_fusing_example/after.png)
## How is it done in concretefhe?

View File

@@ -0,0 +1,4 @@
# MLIR
to be done

View File

@@ -95,7 +95,7 @@ git checkout $YOUR_BRANCH
# rebase on top of main branch
git rebase main
# push the latest version of the local branch to remote
# push the latest version of the local branch to remote
git push --force
```