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 2.9 kB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798
  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. local_lib_inc_path := ${LOCAL_PATH} \
  10. ${TOPDIR}inc \
  11. ${TOPDIR}inc/external \
  12. ${TOPDIR}inc/external/graph \
  13. $(TOPDIR)libc_sec/include \
  14. ${TOPDIR}third_party/protobuf/include \
  15. ${TOPDIR}inc/framework \
  16. $(TOPDIR)framework/domi \
  17. #compiler for host
  18. include $(CLEAR_VARS)
  19. LOCAL_MODULE := libge_memory
  20. LOCAL_CFLAGS += -std=c++11
  21. LOCAL_CFLAGS += -Werror
  22. LOCAL_CFLAGS += -O2
  23. ifeq ($(DEBUG), 1)
  24. LOCAL_CFLAGS += -g -O0
  25. endif
  26. LOCAL_LDFLAGS :=
  27. LOCAL_STATIC_LIBRARIES :=
  28. LOCAL_SHARED_LIBRARIES := libprotobuf \
  29. libc_sec \
  30. libslog \
  31. libgraph \
  32. libge_common \
  33. LOCAL_SRC_FILES := $(local_lib_src_files)
  34. generated_sources_dir := $(call local-generated-sources-dir)
  35. LOCAL_EXPORT_C_INCLUDE_DIRS := $(generated_sources_dir)/proto/$(LOCAL_PATH)
  36. LOCAL_C_INCLUDES := $(local_lib_inc_path)
  37. LOCAL_C_INCLUDES += LOCAL_EXPORT_C_INCLUDE_DIRS
  38. include ${BUILD_HOST_STATIC_LIBRARY}
  39. #compiler for device
  40. include $(CLEAR_VARS)
  41. LOCAL_MODULE := libge_memory
  42. LOCAL_CFLAGS += -std=c++11
  43. LOCAL_CFLAGS += -Werror
  44. LOCAL_CFLAGS += -DGOOGLE_PROTOBUF_NO_RTTI -DDEV_VISIBILITY
  45. LOCAL_CFLAGS += -O2
  46. LOCAL_LDFLAGS :=
  47. LOCAL_STATIC_LIBRARIES :=
  48. LOCAL_SHARED_LIBRARIES := libprotobuf \
  49. libc_sec \
  50. libslog \
  51. libgraph \
  52. libge_common \
  53. LOCAL_SRC_FILES := $(local_lib_src_files)
  54. generated_sources_dir := $(call local-generated-sources-dir)
  55. LOCAL_EXPORT_C_INCLUDE_DIRS := $(generated_sources_dir)/proto/$(LOCAL_PATH)
  56. LOCAL_C_INCLUDES := $(local_lib_inc_path)
  57. LOCAL_C_INCLUDES += LOCAL_EXPORT_C_INCLUDE_DIRS
  58. include ${BUILD_STATIC_LIBRARY}
  59. #compiler for device
  60. include $(CLEAR_VARS)
  61. LOCAL_MODULE := libge_memory
  62. LOCAL_CFLAGS += -std=c++11
  63. LOCAL_LDFLAGS :=
  64. LOCAL_STATIC_LIBRARIES :=
  65. LOCAL_SHARED_LIBRARIES := libprotobuf \
  66. libc_sec \
  67. libslog \
  68. libgraph \
  69. libge_common \
  70. LOCAL_SRC_FILES := $(local_lib_src_files)
  71. generated_sources_dir := $(call local-generated-sources-dir)
  72. LOCAL_EXPORT_C_INCLUDE_DIRS := $(generated_sources_dir)/proto/$(LOCAL_PATH)
  73. LOCAL_C_INCLUDES := $(local_lib_inc_path)
  74. LOCAL_C_INCLUDES += LOCAL_EXPORT_C_INCLUDE_DIRS
  75. include ${BUILD_LLT_STATIC_LIBRARY}

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