diff --git a/src/tim/vx/platform/lite/lite_native.cc b/src/tim/vx/platform/lite/lite_native.cc index 21a45af..d3ecf6b 100644 --- a/src/tim/vx/platform/lite/lite_native.cc +++ b/src/tim/vx/platform/lite/lite_native.cc @@ -181,6 +181,7 @@ LiteNativeExecutorImpl::LiteNativeExecutorImpl(const std::shared_ptr& d vsi_size_t num_devices = 0; vsi_size_t available_core_count = 0; auto ctx = dynamic_cast(context_.get()); + sub_device_ = NULL; vsi_nn_GetDevices(ctx->context(), vsi_devices, &num_devices); //Always use device 0 to compile NBG. diff --git a/src/tim/vx/platform/native.cc b/src/tim/vx/platform/native.cc index 038f38d..c461535 100644 --- a/src/tim/vx/platform/native.cc +++ b/src/tim/vx/platform/native.cc @@ -85,7 +85,6 @@ std::vector> NativeDevice::Enumerate() { #ifdef VSI_DEVICE_SUPPORT vsi_nn_device_t vsi_devices[VSI_MAX_DEVICES] = {0}; vsi_status status = VSI_FAILURE; - vsi_size_t deviceCount = 0; status = vsi_nn_GetDevices(context,vsi_devices,&deviceCount); if(status != VSI_SUCCESS){ @@ -215,9 +214,10 @@ NativeExecutorImpl::NativeExecutorImpl(const std::shared_ptr& device, #ifdef VSI_DEVICE_SUPPORT vsi_nn_device_t vsi_devices[VSI_MAX_DEVICES] = {0}; vsi_size_t num_devices = 0; + sub_device_ = NULL; auto ctx = dynamic_cast(context_.get()); vsi_nn_GetDevices(ctx->context(),vsi_devices,&num_devices); - vsi_nn_CreateSubDevice(vsi_devices[device_->Id()],core_index_,core_count_,&sub_devices_); + vsi_nn_CreateSubDevice(vsi_devices[device_->Id()],core_index_,core_count_,&sub_device_); #endif } @@ -296,7 +296,7 @@ bool NativeExecutorImpl::BindDevices(const std::shared_ptr& graph){ vsi_status status = VSI_SUCCESS; #ifdef VSI_DEVICE_SUPPORT GraphImpl* graphimp = dynamic_cast(graph.get()); - status = vsi_nn_BindDevices(graphimp->graph(), 1, &sub_devices_); + status = vsi_nn_BindDevices(graphimp->graph(), 1, &sub_device_); #else CompileOption option; option.setDeviceId(device_->Id()); diff --git a/src/tim/vx/platform/native_private.h b/src/tim/vx/platform/native_private.h index 3d86a08..ec5ecf5 100644 --- a/src/tim/vx/platform/native_private.h +++ b/src/tim/vx/platform/native_private.h @@ -88,7 +88,7 @@ class NativeExecutorImpl : public NativeExecutor, private: #ifdef VSI_DEVICE_SUPPORT - vsi_nn_device_t sub_devices_; + vsi_nn_device_t sub_device_; #endif };