From 19a4a68ed32bdeae626ad8272f94ef3a90dbc8a1 Mon Sep 17 00:00:00 2001 From: sunsuodong Date: Mon, 10 May 2021 09:05:15 +0800 Subject: [PATCH] optimize_compilation_speed --- mindspore/lite/src/CMakeLists.txt | 13 ++++---- mindspore/lite/tools/converter/CMakeLists.txt | 33 +++---------------- 2 files changed, 11 insertions(+), 35 deletions(-) diff --git a/mindspore/lite/src/CMakeLists.txt b/mindspore/lite/src/CMakeLists.txt index 06e4cabcd6..703f96d8a6 100644 --- a/mindspore/lite/src/CMakeLists.txt +++ b/mindspore/lite/src/CMakeLists.txt @@ -149,12 +149,14 @@ endif() add_subdirectory(ops) add_subdirectory(runtime/kernel/arm) -add_library(mindspore-lite SHARED ${LITE_SRC}) -add_dependencies(mindspore-lite fbs_src) +add_library(lite_src_mid OBJECT ${LITE_SRC}) +add_dependencies(lite_src_mid fbs_src) +set_target_properties(lite_src_mid PROPERTIES POSITION_INDEPENDENT_CODE 1) + +add_library(mindspore-lite SHARED $) set_target_properties(mindspore-lite PROPERTIES CLEAN_DIRECT_OUTPUT 1) -add_library(mindspore-lite_static STATIC ${LITE_SRC}) -add_dependencies(mindspore-lite_static fbs_src) +add_library(mindspore-lite_static STATIC $) set_target_properties(mindspore-lite_static PROPERTIES OUTPUT_NAME "mindspore-lite") set_target_properties(mindspore-lite_static PROPERTIES CLEAN_DIRECT_OUTPUT 1) @@ -249,14 +251,13 @@ if(DEFINED ARCHS) ${CMAKE_CURRENT_SOURCE_DIR}/../../core/ir/dtype/type_id.h ) add_library(mindspore_lite STATIC - ${LITE_SRC} ${MINDSPORE_LITE_PUB_HDRS} ${MINDSPORE_LITE_PUB_HDRS_IR_HDRS} ) add_dependencies(mindspore_lite fbs_src) set_target_properties(mindspore_lite PROPERTIES OUTPUT_NAME "mindspore_lite") set_target_properties(mindspore_lite PROPERTIES CLEAN_DIRECT_OUTPUT 1) - target_link_libraries(mindspore_lite cpu_kernel_mid nnacl_mid cpu_ops_mid) + target_link_libraries(mindspore_lite lite_src_mid cpu_kernel_mid nnacl_mid cpu_ops_mid) target_link_libraries(mindspore_lite log) if(ENABLE_MINDRT) diff --git a/mindspore/lite/tools/converter/CMakeLists.txt b/mindspore/lite/tools/converter/CMakeLists.txt index 0596b10d0e..8c35c5aac2 100644 --- a/mindspore/lite/tools/converter/CMakeLists.txt +++ b/mindspore/lite/tools/converter/CMakeLists.txt @@ -9,12 +9,9 @@ set(CCSRC_SRC include(${TOP_DIR}/cmake/external_libs/glog.cmake) include_directories(${TOP_DIR}/mindspore/ccsrc/backend/kernel_compiler/cpu) -file(GLOB OPS_SRC ${CMAKE_CURRENT_SOURCE_DIR}/../../src/ops/*.cc - ${CMAKE_CURRENT_SOURCE_DIR}/../../src/ops/populate/*.cc - ${CMAKE_CURRENT_SOURCE_DIR}/ops/*.cc - ) file(GLOB_RECURSE CONVERTER_SRC RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_CURRENT_SOURCE_DIR}/ops/*.cc ${CMAKE_CURRENT_SOURCE_DIR}/../flag/flag_parser.cc ${CMAKE_CURRENT_SOURCE_DIR}/converter.cc ${CMAKE_CURRENT_SOURCE_DIR}/converter_flags.cc @@ -162,27 +159,6 @@ if(ENABLE_MINDRT) ) endif() -set(ARM_DIR ${CMAKE_CURRENT_SOURCE_DIR}/../../src/runtime/kernel/arm) -file(GLOB KERNEL_SRC - ${ARM_DIR}/base/*.cc - ${NNACL_DIR}/*.c - ${NNACL_DIR}/fp32/*.c - ${NNACL_DIR}/infer/*.c - ${NNACL_DIR}/int8/*.c - ${NNACL_DIR}/base/*.c - ${NNACL_DIR}/quantization/*.c - ${ARM_DIR}/fp32/*.cc - ${ARM_DIR}/int8/*.cc - ) - -if(PLATFORM_ARM64) - # assembly - file(GLOB ASSEMBLY_SRC ${NNACL_DIR}/assembly/arm64/*.s - ${NNACL_DIR}/assembly/arm64/*.S) - set_property(SOURCE ${ASSEMBLY_SRC} PROPERTY LANGUAGE C) - set(KERNEL_SRC ${KERNEL_SRC} ${ASSEMBLY_SRC}) -endif() - file(GLOB PROTO_FILE "" ${CMAKE_CURRENT_SOURCE_DIR}/parser/caffe/caffe.proto ${CMAKE_CURRENT_SOURCE_DIR}/parser/tf/proto/*.proto @@ -199,16 +175,12 @@ ms_build_flatbuffers_lite(TFLITE_FBS_FILES ${CMAKE_CURRENT_SOURCE_DIR}/parser/tf set_property(SOURCE ${CONVERTER_SRC} PROPERTY COMPILE_DEFINITIONS SUBMODULE_ID=mindspore::SubModuleId::SM_LITE) set_property(SOURCE ${CCSRC_SRC} PROPERTY COMPILE_DEFINITIONS SUBMODULE_ID=mindspore::SubModuleId::SM_LITE) -set_property(SOURCE ${OPS_SRC} PROPERTY COMPILE_DEFINITIONS SUBMODULE_ID=mindspore::SubModuleId::SM_LITE) -set_property(SOURCE ${KERNEL_SRC} PROPERTY COMPILE_DEFINITIONS SUBMODULE_ID=mindspore::SubModuleId::SM_LITE) set_property(SOURCE ${LITE_SRC} PROPERTY COMPILE_DEFINITIONS SUBMODULE_ID=mindspore::SubModuleId::SM_LITE) set_property(SOURCE ${MINDRT_SRC} PROPERTY COMPILE_DEFINITIONS SUBMODULE_ID=mindspore::SubModuleId::SM_LITE) add_executable(converter_lite main.cc ${CCSRC_SRC} ${CONVERTER_SRC} - ${OPS_SRC} - ${KERNEL_SRC} ${LITE_SRC} ${MINDRT_SRC} ) @@ -216,6 +188,9 @@ add_dependencies(converter_lite fbs_src) add_dependencies(converter_lite fbs_inner_src) target_link_libraries(converter_lite PRIVATE + cpu_ops_mid + nnacl_mid + cpu_kernel_mid tflite_parser_mid tf_parser_mid caffe_parser_mid