You can not select more than 25 topics Topics must start with a chinese character,a letter or number, can include dashes ('-') and can be up to 35 characters long.

graph.mk 7.7 kB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323
  1. LOCAL_PATH := $(call my-dir)
  2. include $(LOCAL_PATH)/stub/Makefile
  3. COMMON_LOCAL_SRC_FILES := \
  4. ./proto/om.proto \
  5. ./proto/ge_ir.proto \
  6. ./proto/ge_onnx.proto \
  7. ./proto/insert_op.proto \
  8. ./proto/task.proto \
  9. ./proto/fwk_adapter.proto \
  10. ./proto/op_mapping_info.proto \
  11. ./proto/dump_task.proto \
  12. ./anchor.cc \
  13. ./ge_attr_value.cc \
  14. ./attr_value.cc \
  15. ./buffer.cc \
  16. ./compute_graph.cc \
  17. ./ascend_string.cc \
  18. ./gnode.cc \
  19. ./graph.cc \
  20. ./inference_context.cc \
  21. ./shape_refiner.cc \
  22. ./format_refiner.cc \
  23. ./ref_relation.cc \
  24. ./model.cc \
  25. ./model_serialize.cc \
  26. ./node.cc \
  27. ./op_desc.cc \
  28. ./operator.cc \
  29. ./operator_factory.cc \
  30. ./operator_factory_impl.cc \
  31. ./ge_attr_define.cc \
  32. ./ge_tensor.cc \
  33. ./detail/attributes_holder.cc \
  34. ./utils/anchor_utils.cc \
  35. ./utils/tuning_utils.cc \
  36. ./utils/graph_utils.cc \
  37. ./utils/ge_ir_utils.cc \
  38. ./utils/op_desc_utils.cc \
  39. ./utils/type_utils.cc \
  40. ./utils/tensor_utils.cc \
  41. ./tensor.cc \
  42. ./debug/graph_debug.cc \
  43. ./opsproto/opsproto_manager.cc \
  44. ../ops/op_imp.cpp \
  45. option/ge_context.cc \
  46. option/ge_local_context.cc \
  47. ./runtime_inference_context.cc \
  48. ./utils/node_utils.cc \
  49. ../third_party/transformer/src/axis_util.cpp \
  50. ../third_party/transformer/src/transfer_shape_according_to_format.cpp \
  51. ./utils/transformer_utils.cc \
  52. COMMON_LOCAL_C_INCLUDES := \
  53. proto/om.proto \
  54. proto/ge_ir.proto \
  55. proto_inner/ge_onnx.proto \
  56. proto/insert_op.proto \
  57. proto/task.proto \
  58. proto/fwk_adapter.proto \
  59. proto/op_mapping_info.proto \
  60. proto/dump_task.proto \
  61. inc \
  62. metadef/inc \
  63. graphengine/inc \
  64. inc/external \
  65. metadef/inc/external \
  66. graphengine/inc/external \
  67. metadef/inc/external/graph \
  68. metadef/inc/graph \
  69. metadef/inc/common \
  70. metadef \
  71. metadef/graph \
  72. third_party/protobuf/include \
  73. $(TOPDIR)metadef/third_party \
  74. $(TOPDIR)metadef/third_party/transformer/inc \
  75. libc_sec/include \
  76. ops/built-in/op_proto/inc \
  77. cann/ops/built-in/op_proto/inc \
  78. #compiler for host
  79. include $(CLEAR_VARS)
  80. LOCAL_MODULE := libgraph
  81. LOCAL_CFLAGS += -DFMK_SUPPORT_DUMP -O2 -Dgoogle=ascend_private -Wno-deprecated-declarations
  82. LOCAL_CPPFLAGS += -fexceptions
  83. LOCAL_C_INCLUDES := $(COMMON_LOCAL_C_INCLUDES)
  84. LOCAL_SRC_FILES := $(COMMON_LOCAL_SRC_FILES)
  85. LOCAL_SHARED_LIBRARIES := \
  86. libc_sec \
  87. libascend_protobuf \
  88. libslog \
  89. liberror_manager \
  90. LOCAL_STATIC_LIBRARIES := \
  91. libmmpa \
  92. LOCAL_LDFLAGS := -lrt -ldl
  93. LOCAL_MULTILIB := 64
  94. LOCAL_PROPRIETARY_MODULE := true
  95. include $(BUILD_HOST_SHARED_LIBRARY)
  96. #compiler for host
  97. include $(CLEAR_VARS)
  98. LOCAL_MODULE := stub/libgraph
  99. LOCAL_CFLAGS += -DFMK_SUPPORT_DUMP -O2 -Wno-deprecated-declarations
  100. LOCAL_CPPFLAGS += -fexceptions
  101. LOCAL_C_INCLUDES := $(COMMON_LOCAL_C_INCLUDES)
  102. LOCAL_SRC_FILES := \
  103. ../../out/graph/lib64/stub/attr_value.cc \
  104. ../../out/graph/lib64/stub/graph.cc \
  105. ../../out/graph/lib64/stub/operator.cc \
  106. ../../out/graph/lib64/stub/tensor.cc \
  107. ../../out/graph/lib64/stub/operator_factory.cc \
  108. ../../out/graph/lib64/stub/ascend_string.cc \
  109. ../../out/graph/lib64/stub/gnode.cc \
  110. LOCAL_SHARED_LIBRARIES :=
  111. LOCAL_LDFLAGS := -lrt -ldl
  112. LOCAL_MULTILIB := 64
  113. LOCAL_PROPRIETARY_MODULE := true
  114. include $(BUILD_HOST_SHARED_LIBRARY)
  115. #compiler for host
  116. include $(CLEAR_VARS)
  117. LOCAL_MODULE := fwk_stub/libgraph
  118. LOCAL_CFLAGS += -DFMK_SUPPORT_DUMP -O2 -Wno-deprecated-declarations
  119. LOCAL_CPPFLAGS += -fexceptions
  120. LOCAL_C_INCLUDES := $(COMMON_LOCAL_C_INCLUDES)
  121. LOCAL_SRC_FILES := \
  122. ../../out/graph/lib64/stub/attr_value.cc \
  123. ../../out/graph/lib64/stub/graph.cc \
  124. ../../out/graph/lib64/stub/operator.cc \
  125. ../../out/graph/lib64/stub/operator_factory.cc \
  126. ../../out/graph/lib64/stub/tensor.cc \
  127. ../../out/graph/lib64/stub/inference_context.cc \
  128. ../../out/graph/lib64/stub/ascend_string.cc \
  129. ../../out/graph/lib64/stub/gnode.cc \
  130. LOCAL_SHARED_LIBRARIES :=
  131. LOCAL_LDFLAGS := -lrt -ldl
  132. LOCAL_MULTILIB := 64
  133. LOCAL_PROPRIETARY_MODULE := true
  134. include $(BUILD_HOST_SHARED_LIBRARY)
  135. #compiler for device
  136. include $(CLEAR_VARS)
  137. LOCAL_MODULE := libgraph
  138. LOCAL_CFLAGS += -O2 -Dgoogle=ascend_private -Wno-deprecated-declarations
  139. LOCAL_C_INCLUDES := $(COMMON_LOCAL_C_INCLUDES)
  140. LOCAL_SRC_FILES := $(COMMON_LOCAL_SRC_FILES)
  141. LOCAL_SHARED_LIBRARIES := \
  142. libc_sec \
  143. libascend_protobuf \
  144. libslog \
  145. liberror_manager \
  146. LOCAL_STATIC_LIBRARIES := \
  147. libmmpa \
  148. LOCAL_LDFLAGS := -lrt -ldl
  149. ifeq ($(device_os),android)
  150. LOCAL_LDFLAGS := -ldl
  151. endif
  152. LOCAL_MULTILIB := 64
  153. LOCAL_PROPRIETARY_MODULE := true
  154. include $(BUILD_SHARED_LIBRARY)
  155. #compiler for device
  156. include $(CLEAR_VARS)
  157. LOCAL_MODULE := stub/libgraph
  158. LOCAL_CFLAGS += -O2
  159. LOCAL_C_INCLUDES := $(COMMON_LOCAL_C_INCLUDES)
  160. LOCAL_SRC_FILES := \
  161. ../../out/graph/lib64/stub/attr_value.cc \
  162. ../../out/graph/lib64/stub/graph.cc \
  163. ../../out/graph/lib64/stub/operator.cc \
  164. ../../out/graph/lib64/stub/tensor.cc \
  165. ../../out/graph/lib64/stub/operator_factory.cc \
  166. ../../out/graph/lib64/stub/ascend_string.cc \
  167. ../../out/graph/lib64/stub/gnode.cc \
  168. LOCAL_SHARED_LIBRARIES :=
  169. LOCAL_LDFLAGS := -lrt -ldl
  170. ifeq ($(device_os),android)
  171. LOCAL_LDFLAGS := -ldl
  172. endif
  173. LOCAL_MULTILIB := 64
  174. LOCAL_PROPRIETARY_MODULE := true
  175. include $(BUILD_SHARED_LIBRARY)
  176. #compiler for device
  177. include $(CLEAR_VARS)
  178. LOCAL_MODULE := fwk_stub/libgraph
  179. LOCAL_CFLAGS += -O2
  180. LOCAL_C_INCLUDES := $(COMMON_LOCAL_C_INCLUDES)
  181. LOCAL_SRC_FILES := \
  182. ../../out/graph/lib64/stub/attr_value.cc \
  183. ../../out/graph/lib64/stub/graph.cc \
  184. ../../out/graph/lib64/stub/operator.cc \
  185. ../../out/graph/lib64/stub/operator_factory.cc \
  186. ../../out/graph/lib64/stub/tensor.cc \
  187. ../../out/graph/lib64/stub/inference_context.cc \
  188. ../../out/graph/lib64/stub/ascend_string.cc \
  189. ../../out/graph/lib64/stub/gnode.cc \
  190. LOCAL_SHARED_LIBRARIES :=
  191. LOCAL_LDFLAGS := -lrt -ldl
  192. ifeq ($(device_os),android)
  193. LOCAL_LDFLAGS := -ldl
  194. endif
  195. LOCAL_MULTILIB := 64
  196. LOCAL_PROPRIETARY_MODULE := true
  197. include $(BUILD_SHARED_LIBRARY)
  198. # compile for ut/st
  199. include $(CLEAR_VARS)
  200. LOCAL_MODULE := libgraph
  201. LOCAL_CFLAGS += -Dgoogle=ascend_private
  202. LOCAL_C_INCLUDES := $(COMMON_LOCAL_C_INCLUDES)
  203. LOCAL_SRC_FILES := $(COMMON_LOCAL_SRC_FILES)
  204. LOCAL_SHARED_LIBRARIES := \
  205. libc_sec \
  206. libascend_protobuf \
  207. libslog \
  208. liberror_manager \
  209. LOCAL_STATIC_LIBRARIES := \
  210. libmmpa \
  211. LOCAL_LDFLAGS := -lrt -ldl
  212. LOCAL_MULTILIB := 64
  213. LOCAL_PROPRIETARY_MODULE := true
  214. include $(BUILD_LLT_SHARED_LIBRARY)
  215. #compiler for host static lib
  216. include $(CLEAR_VARS)
  217. LOCAL_MODULE := libgraph
  218. LOCAL_CFLAGS += -DFMK_SUPPORT_DUMP -O2 -Dgoogle=ascend_private
  219. LOCAL_CPPFLAGS += -fexceptions
  220. LOCAL_C_INCLUDES := $(COMMON_LOCAL_C_INCLUDES)
  221. LOCAL_SRC_FILES := $(COMMON_LOCAL_SRC_FILES)
  222. LOCAL_STATIC_LIBRARIES := \
  223. libascend_protobuf \
  224. LOCAL_SHARED_LIBRARIES := \
  225. libc_sec \
  226. libslog \
  227. liberror_manager \
  228. LOCAL_LDFLAGS := -lrt -ldl
  229. LOCAL_MULTILIB := 64
  230. LOCAL_PROPRIETARY_MODULE := true
  231. include $(BUILD_HOST_STATIC_LIBRARY)
  232. #compiler for device static lib
  233. include $(CLEAR_VARS)
  234. LOCAL_MODULE := libgraph
  235. LOCAL_CFLAGS += -O2 -Dgoogle=ascend_private
  236. LOCAL_C_INCLUDES := $(COMMON_LOCAL_C_INCLUDES)
  237. LOCAL_SRC_FILES := $(COMMON_LOCAL_SRC_FILES)
  238. LOCAL_STATIC_LIBRARIES := \
  239. libascend_protobuf \
  240. LOCAL_SHARED_LIBRARIES := \
  241. libc_sec \
  242. libslog \
  243. liberror_manager \
  244. LOCAL_LDFLAGS := -lrt -ldl
  245. LOCAL_MULTILIB := 64
  246. LOCAL_PROPRIETARY_MODULE := true
  247. include $(BUILD_STATIC_LIBRARY)

图引擎模块(GE)是MindSpore的一个子模块,其代码由C++实现,位于前端模块ME和底层硬件之间,起到承接作用。图引擎模块以ME下发的图作为输入,然后进行一系列的深度图优化操作,最后输出一张可以在底层硬件上高效运行的图。GE针对昇腾AI处理器的硬件结构特点,做了特定的优化工作,以此来充分发挥出昇腾AI处理器的强大算力。在进行模型训练/推理时,GE会被自动调用而用户并不感知。GE主要由GE API和GE Core两部分组成,详细的架构图如下所示