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.1 kB

4 years ago
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. LOCAL_PATH := $(call my-dir)
  2. # task.proto is old task, add it for ops_kernel_info_store
  3. local_ge_runtime_src_files := \
  4. model_runner.cc \
  5. runtime_model.cc \
  6. output.cc \
  7. task/aicpu_task.cc \
  8. task/cce_task.cc \
  9. task/tbe_task.cc \
  10. task/event_record_task.cc \
  11. task/event_wait_task.cc \
  12. task/stream_active_task.cc \
  13. task/stream_switch_task.cc \
  14. task/hccl_task.cc \
  15. task/memcpy_async_task.cc \
  16. task/profiler_task.cc \
  17. local_ge_runtime_include := \
  18. $(LOCAL_PATH)/ \
  19. $(TOPDIR)libc_sec/include \
  20. $(TOPDIR)inc/external \
  21. $(TOPDIR)inc/external/graph \
  22. $(TOPDIR)inc/framework \
  23. $(TOPDIR)inc/graph \
  24. $(TOPDIR)inc \
  25. $(LOCAL_PATH)/../ \
  26. third_party/protobuf/include
  27. local_ge_runtime_shared_library := \
  28. libruntime \
  29. libslog \
  30. libc_sec
  31. local_ge_runtime_ldflags := -lrt -ldl
  32. # compile device libge_runtime
  33. include $(CLEAR_VARS)
  34. LOCAL_MODULE := libge_runtime
  35. LOCAL_CFLAGS += -DPROTOBUF_INLINE_NOT_IN_HEADERS=0 -O2
  36. LOCAL_CFLAGS += -Werror
  37. LOCAL_SRC_FILES := $(local_ge_runtime_src_files)
  38. LOCAL_C_INCLUDES := $(local_ge_runtime_include)
  39. LOCAL_SHARED_LIBRARIES := $(local_ge_runtime_shared_library)
  40. LOCAL_LDFLAGS += $(local_ge_runtime_ldflags)
  41. include $(BUILD_SHARED_LIBRARY)
  42. # compile host libge_runtime
  43. include $(CLEAR_VARS)
  44. LOCAL_MODULE := libge_runtime
  45. LOCAL_CFLAGS += -Werror
  46. LOCAL_CFLAGS += -DPROTOBUF_INLINE_NOT_IN_HEADERS=0
  47. ifeq ($(DEBUG), 1)
  48. LOCAL_CFLAGS += -g -O0
  49. else
  50. LOCAL_CFLAGS += -O2
  51. endif
  52. LOCAL_SRC_FILES := $(local_ge_runtime_src_files)
  53. LOCAL_C_INCLUDES := $(local_ge_runtime_include)
  54. LOCAL_SHARED_LIBRARIES := $(local_ge_runtime_shared_library)
  55. LOCAL_LDFLAGS += $(local_ge_runtime_ldflags)
  56. include $(BUILD_HOST_SHARED_LIBRARY)

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