From 438e34175b571af2fba3e01fd89a044c441991d4 Mon Sep 17 00:00:00 2001 From: ckey_Dou Date: Tue, 22 Sep 2020 09:28:28 +0800 Subject: [PATCH] fix typo --- design/meps/mep-akg/MEP-AKG.md | 2 +- design/meps/mep-akg/akg_in_mindspore.png | Bin 0 -> 25851 bytes 2 files changed, 1 insertion(+), 1 deletion(-) create mode 100644 design/meps/mep-akg/akg_in_mindspore.png diff --git a/design/meps/mep-akg/MEP-AKG.md b/design/meps/mep-akg/MEP-AKG.md index 6889284..262ef48 100644 --- a/design/meps/mep-akg/MEP-AKG.md +++ b/design/meps/mep-akg/MEP-AKG.md @@ -143,7 +143,7 @@ AKG composes with four basic optimization module, normalization, auto schedule, When GraphKernel is enabled, ops are reconstructed in the graph level. The new ops described in the format of json will be translated into DSL in AKG and then compiled to the target binary. - + diff --git a/design/meps/mep-akg/akg_in_mindspore.png b/design/meps/mep-akg/akg_in_mindspore.png new file mode 100644 index 0000000000000000000000000000000000000000..1a6c8620b4bb7a3f95e044d9891582a85ad55b18 GIT binary patch literal 25851 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 KwBX6}(Ek9eM^cIa literal 0 HcmV?d00001