[MIR] Added Readme (#3271)
authorАндрей Шедько/AI Tools Lab /SRR/Engineer/삼성전자 <a.shedko@samsung.com>
Mon, 13 May 2019 16:23:55 +0000 (19:23 +0300)
committerEfimov Alexander/AI Tools Lab/./Samsung Electronics <a.efimov@samsung.com>
Mon, 13 May 2019 16:23:55 +0000 (19:23 +0300)
Added a readme for Model IR

Signed-off-by: Andrei Shedko <a.shedko@samsung.com>
contrib/mir/Readme.md [new file with mode: 0644]

diff --git a/contrib/mir/Readme.md b/contrib/mir/Readme.md
new file mode 100644 (file)
index 0000000..a7a3c10
--- /dev/null
@@ -0,0 +1,36 @@
+## Model IR (MIR)
+
+### Purpose
+This library exposes **NNC**'s model IR to the outer tools (currently `Mirunner`).
+
+### Design philosophy
+
+**MIR** was designed to support a multiple-frontend NN compiler/optimizer.
+
+### Function
+
+The high level overview of **MIR** is:
+* operations are a composition of their `inputs`, `outputs` and 
+special attributes specific to different operation types.
+* operations can have multiple inputs and multiple outputs,
+ each output can be an input to more than one operation 
+ (can be used in more than one operation).
+* the kernel tensors are represented by `ConstantOp` and
+ are linked to operations via `Input` objects.
+
+Mir has a protobuf serializer/deserializer for shapes and tensors (see `mir.proto` schema).
+
+For list of currently supported operations, see `mir/ops/operations.lst.h`.
+### How to use
+Can be included as a `CMake` target.
+
+### TODO
+
+* Expand serialization
+* Add More to readme 
+### Dependencies
+
+Mir depends on `adtitas` library, which provides the `small_vector` data type.
+    
\ No newline at end of file