forked from mindspore-Ecosystem/mindspore
fix dynamic shape aicpu launch failed.
This commit is contained in:
parent
70b5de7a71
commit
42005bd5df
|
@ -342,6 +342,15 @@ void AscendDeviceContext::CreateKernel(const std::vector<CNodePtr> &nodes) const
|
|||
MS_LOG(INFO) << "Status record: end create kernel.";
|
||||
}
|
||||
|
||||
void AscendDeviceContext::LaunchDeviceLibrary() const {
|
||||
MS_LOG(INFO) << "Status record: start launch device library.";
|
||||
auto ret = mindspore::kernel::AicpuOpKernelLoad::GetInstance().LaunchAicpuKernelSo();
|
||||
if (!ret) {
|
||||
MS_LOG(EXCEPTION) << "Cust aicpu kernel so load failed.";
|
||||
}
|
||||
MS_LOG(INFO) << "Status record: end launch device library.";
|
||||
}
|
||||
|
||||
void AscendDeviceContext::UpdateExecOrder(const KernelGraphPtr &graph) const {
|
||||
MS_EXCEPTION_IF_NULL(graph);
|
||||
std::vector<CNodePtr> new_orders;
|
||||
|
@ -403,6 +412,7 @@ void AscendDeviceContext::PreprocessBeforeRunGraph(const KernelGraphPtr &graph)
|
|||
opt::AscendDynamicShapeConvert(graph);
|
||||
AscendStreamAssign::GetInstance().AssignStream(NOT_NULL(graph));
|
||||
AssignOutputNopNodeDeviceAddress(graph);
|
||||
LaunchDeviceLibrary();
|
||||
} else {
|
||||
PreprocessBeforeRunSingleOpGraph(graph);
|
||||
AscendStreamAssign::GetInstance().AssignStream(NOT_NULL(graph));
|
||||
|
@ -711,10 +721,7 @@ void AscendDeviceContext::PreprocessBeforeRunSingleOpGraph(const KernelGraphPtr
|
|||
}
|
||||
|
||||
CreateKernel(atomic_nodes);
|
||||
|
||||
if (!mindspore::kernel::AicpuOpKernelLoad::GetInstance().LaunchAicpuKernelSo()) {
|
||||
MS_LOG(EXCEPTION) << "Cust aicpu kernel so load failed.";
|
||||
}
|
||||
LaunchDeviceLibrary();
|
||||
}
|
||||
|
||||
void AscendDeviceContext::UpdateDynamicShape(const CNodePtr &kernel) const {}
|
||||
|
|
|
@ -131,6 +131,9 @@ class AscendDeviceContext : public DeviceContext {
|
|||
// set rt_context_ to this thread to control device
|
||||
void BindDeviceToCurrentThread() const;
|
||||
|
||||
// Launch device aicpu library
|
||||
void LaunchDeviceLibrary() const;
|
||||
|
||||
private:
|
||||
// Graph loader interface
|
||||
void AllocateGraphMemory(const NotNull<KernelGraphPtr> &root_graph) const;
|
||||
|
|
|
@ -7,8 +7,8 @@ set(CMAKE_C_COMPILER ${TOOLCHAIN_PATH}/hcc/bin/aarch64-target-linux-gnu-gcc)
|
|||
set(CMAKE_CXX_COMPILER ${TOOLCHAIN_PATH}/hcc/bin/aarch64-target-linux-gnu-g++)
|
||||
|
||||
if(EXISTS ${CMAKE_C_COMPILER} AND EXISTS ${CMAKE_CXX_COMPILER})
|
||||
include(${CMAKE_CURRENT_SOURCE_DIR}/cmake/dependency_securec_arm.cmake)
|
||||
include(${CMAKE_CURRENT_SOURCE_DIR}/cmake/protobuf_arm.cmake)
|
||||
include(${CMAKE_SOURCE_DIR}/cmake/dependency_securec_arm.cmake)
|
||||
include(${CMAKE_SOURCE_DIR}/cmake/external_libs/protobuf_arm.cmake)
|
||||
|
||||
set(AICPU_PROTO_SRC
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/aicpu_op_proto/aicpu_tensor.proto
|
||||
|
|
Loading…
Reference in New Issue