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.

module.mk 3.3 kB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103
  1. LOCAL_PATH := $(call my-dir)
  2. local_lib_src_files := memory_assigner.cc \
  3. graph_mem_assigner.cc \
  4. binary_block_mem_assigner.cc \
  5. block_mem_assigner.cc \
  6. hybrid_mem_assigner.cc \
  7. max_block_mem_assigner.cc \
  8. var_mem_assign_util.cc \
  9. buffer_pool_mem_assigner.cc \
  10. local_lib_inc_path := ${LOCAL_PATH} \
  11. ${TOPDIR}inc \
  12. ${TOPDIR}metadef/inc \
  13. ${TOPDIR}graphengine/inc \
  14. ${TOPDIR}inc/external \
  15. ${TOPDIR}metadef/inc/external \
  16. ${TOPDIR}graphengine/inc/external \
  17. ${TOPDIR}metadef/inc/external/graph \
  18. $(TOPDIR)libc_sec/include \
  19. ${TOPDIR}third_party/protobuf/include \
  20. ${TOPDIR}graphengine/inc/framework \
  21. $(TOPDIR)graphengine/ge \
  22. #compiler for host
  23. include $(CLEAR_VARS)
  24. LOCAL_MODULE := libge_memory
  25. LOCAL_CFLAGS += -std=c++11
  26. LOCAL_CFLAGS += -Werror
  27. LOCAL_CFLAGS += -O2 -Dgoogle=ascend_private
  28. ifeq ($(DEBUG), 1)
  29. LOCAL_CFLAGS += -g -O0
  30. endif
  31. LOCAL_LDFLAGS :=
  32. LOCAL_STATIC_LIBRARIES :=
  33. LOCAL_SHARED_LIBRARIES := libascend_protobuf \
  34. libc_sec \
  35. libslog \
  36. libgraph \
  37. libge_common \
  38. LOCAL_SRC_FILES := $(local_lib_src_files)
  39. generated_sources_dir := $(call local-generated-sources-dir)
  40. LOCAL_EXPORT_C_INCLUDE_DIRS := $(generated_sources_dir)/proto/$(LOCAL_PATH)
  41. LOCAL_C_INCLUDES := $(local_lib_inc_path)
  42. LOCAL_C_INCLUDES += LOCAL_EXPORT_C_INCLUDE_DIRS
  43. include ${BUILD_HOST_STATIC_LIBRARY}
  44. #compiler for device
  45. include $(CLEAR_VARS)
  46. LOCAL_MODULE := libge_memory
  47. LOCAL_CFLAGS += -std=c++11
  48. LOCAL_CFLAGS += -Werror
  49. LOCAL_CFLAGS += -DGOOGLE_PROTOBUF_NO_RTTI -DDEV_VISIBILITY
  50. LOCAL_CFLAGS += -O2 -Dgoogle=ascend_private
  51. LOCAL_LDFLAGS :=
  52. LOCAL_STATIC_LIBRARIES :=
  53. LOCAL_SHARED_LIBRARIES := libascend_protobuf \
  54. libc_sec \
  55. libslog \
  56. libgraph \
  57. libge_common \
  58. LOCAL_SRC_FILES := $(local_lib_src_files)
  59. generated_sources_dir := $(call local-generated-sources-dir)
  60. LOCAL_EXPORT_C_INCLUDE_DIRS := $(generated_sources_dir)/proto/$(LOCAL_PATH)
  61. LOCAL_C_INCLUDES := $(local_lib_inc_path)
  62. LOCAL_C_INCLUDES += LOCAL_EXPORT_C_INCLUDE_DIRS
  63. include ${BUILD_STATIC_LIBRARY}
  64. #compiler for device
  65. include $(CLEAR_VARS)
  66. LOCAL_MODULE := libge_memory
  67. LOCAL_CFLAGS += -std=c++11 -Dgoogle=ascend_private
  68. LOCAL_LDFLAGS :=
  69. LOCAL_STATIC_LIBRARIES :=
  70. LOCAL_SHARED_LIBRARIES := libascend_protobuf \
  71. libc_sec \
  72. libslog \
  73. libgraph \
  74. libge_common \
  75. LOCAL_SRC_FILES := $(local_lib_src_files)
  76. generated_sources_dir := $(call local-generated-sources-dir)
  77. LOCAL_EXPORT_C_INCLUDE_DIRS := $(generated_sources_dir)/proto/$(LOCAL_PATH)
  78. LOCAL_C_INCLUDES := $(local_lib_inc_path)
  79. LOCAL_C_INCLUDES += LOCAL_EXPORT_C_INCLUDE_DIRS
  80. include ${BUILD_LLT_STATIC_LIBRARY}

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