-
Notifications
You must be signed in to change notification settings - Fork 2.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Memory leaks and valgrind errors when running with TensorRT #7286
Comments
do you mind pointing out which model you are using? I tried faster-rcnn model, which has dynamic shape and many partitions, but haven't seen definitely/indirectly lost in valgrind. |
I am able to reproduce using the C sample app and Squeezenet (files attached). My TensorRT provider is linked as follows: To reproduce: Output shows the delete/delete[] mismatch: Using Onnxruntime C API==1505436==ERROR: AddressSanitizer: alloc-dealloc-mismatch (operator new [] vs operator delete) on 0x6030007811b0 0x6030007811b0 is located 0 bytes inside of 32-byte region [0x6030007811b0,0x6030007811d0) SUMMARY: AddressSanitizer: alloc-dealloc-mismatch (/usr/lib/x86_64-linux-gnu/libasan.so.5+0x1108df) in operator delete(void*) |
Hi Matthill, thanks for sharing the C sample code and I can reproduce the same result using Address Sanitizer. We had a fix for TRT memory leak recently and probably it solves some part of the memory leaks. But of course we want to handle all memory leak issues. |
This issue has been automatically marked as stale due to inactivity and will be closed in 7 days if no further activity occurs. If further support is needed, please provide an update and/or more details. |
I'm having the same issue. I was getting weird results from my network and pinpointed it to the onnxruntime usage of TensorRT. Then I found this issue and tried running with a fixed batch size, which fixed the issue. |
Describe the bug
Running inference either with address sanitization enabled or under Valgrind using TensorRT produces a number of Valgrind errors (a few memory leaks on initialization/destruction, a number of mismatched delete/delete[], and uninitilized values)
Urgency
none
System information
To Reproduce
Compile software using ONNXRuntime with TensorRT. In this case, the model uses a dynamic batch size.
Either enable address sanitization on the compile, or run under valgrind
valgrind --leak-check=full --show-posssibly-lost=no [binary]
Expected behavior
Output should be clean
Additional context
==132002== LEAK SUMMARY:
==132002== definitely lost: 96 bytes in 2 blocks
==132002== indirectly lost: 48 bytes in 2 blocks
==132002== 72 (48 direct, 24 indirect) bytes in 1 blocks are definitely lost in loss record 3,517 of 5,620
==132002== at 0x483CFE3: operator new(unsigned long) (vg_replace_malloc.c:417)
==132002== by 0x10C5E5BAB: createInferRuntime_INTERNAL (in /usr/lib/libnvinfer.so.7.1.3)
==132002== by 0xFF027C51: nvinfer1::(anonymous namespace)::createInferRuntime(nvinfer1::ILogger&) (NvInferRuntime.h:1906)
==132002== by 0xFF02A191: onnxruntime::TensorrtExecutionProvider::TensorrtExecutionProvider(onnxruntime::TensorrtExecutionProviderInfo const&) (tensorrt_execution_provider.cc:226)
==132002== by 0xFF074DBF: std::_MakeUniqonnxruntime::TensorrtExecutionProvider::__single_object std::make_unique<onnxruntime::TensorrtExecutionProvider, onnxruntime::TensorrtExecutionProviderInfo&>(onnxruntime::TensorrtExecutionProviderInfo&) (unique_ptr.h:857)
==132002== by 0xFF074C66: onnxruntime::TensorrtProviderFactory::CreateProvider() (tensorrt_provider_factory.cc:28)
==132002== by 0x6740220: onnxruntime::IExecutionProviderFactory_Translator::CreateProvider() (provider_bridge_ort.cc:709)
==132002== by 0x590B690: (anonymous namespace)::InitializeSession(OrtSessionOptions const*, std::unique_ptr<onnxruntime::InferenceSession, std::default_deleteonnxruntime::InferenceSession >&) (onnxruntime_c_api.cc:457)
==132002== by 0x590BCC0: OrtApis::CreateSessionFromArray(OrtEnv const*, void const*, unsigned long, OrtSessionOptions const*, OrtSession**) (onnxruntime_c_api.cc:508)
==132002== 72 (48 direct, 24 indirect) bytes in 1 blocks are definitely lost in loss record 3,516 of 5,620
==132002== at 0x483CFE3: operator new(unsigned long) (vg_replace_malloc.c:417)
==132002== by 0x10C5E5BAB: createInferRuntime_INTERNAL (in /usr/lib/libnvinfer.so.7.1.3)
==132002== by 0xFF027C51: nvinfer1::(anonymous namespace)::createInferRuntime(nvinfer1::ILogger&) (NvInferRuntime.h:1906)
==132002== by 0xFF02A191: onnxruntime::TensorrtExecutionProvider::TensorrtExecutionProvider(onnxruntime::TensorrtExecutionProviderInfo const&) (tensorrt_execution_provider.cc:226)
==132002== by 0xFF074DBF: std::_MakeUniqonnxruntime::TensorrtExecutionProvider::__single_object std::make_unique<onnxruntime::TensorrtExecutionProvider, onnxruntime::TensorrtExecutionProviderInfo&>(onnxruntime::TensorrtExecutionProviderInfo&) (unique_ptr.h:857)
==132002== by 0xFF074C66: onnxruntime::TensorrtProviderFactory::CreateProvider() (tensorrt_provider_factory.cc:28)
==132002== by 0x6740220: onnxruntime::IExecutionProviderFactory_Translator::CreateProvider() (provider_bridge_ort.cc:709)
==132002== by 0x590B690: (anonymous namespace)::InitializeSession(OrtSessionOptions const*, std::unique_ptr<onnxruntime::InferenceSession, std::default_deleteonnxruntime::InferenceSession >&) (onnxruntime_c_api.cc:457)
==132002== by 0x590BCC0: OrtApis::CreateSessionFromArray(OrtEnv const*, void const*, unsigned long, OrtSessionOptions const*, OrtSession**) (onnxruntime_c_api.cc:508)
==132002== Conditional jump or move depends on uninitialised value(s)
==132002== at 0xD4347DC7: ??? (in /usr/lib/libcudnn_ops_infer.so.8.0.4)
==132002== by 0xD4337142: ??? (in /usr/lib/libcudnn_ops_infer.so.8.0.4)
==132002== by 0xD4208565: cudnnReduceTensor (in /usr/lib/libcudnn_ops_infer.so.8.0.4)
==132002== by 0x5AE3227: onnxruntime::common::Status onnxruntime::cuda::ReduceComputeCore<float, (cudnnReduceTensorIndices_t)1>(onnxruntime::CUDAExecutionProvider&, onnxruntime::Tensor const&, onnxruntime::cuda::PrepareReduceMetadata&, onnxruntime::Tensor&, cudnnReduceTensorOp_t, std::vector<long, std::allocator > const&, bool, bool, bool, bool, onnxruntime::TensorShape const*) (reduction_ops.cc:597)
==132002== by 0x5ADECF9: onnxruntime::common::Status onnxruntime::cuda::ReduceKernel::ComputeImpl<float, (cudnnReduceTensorIndices_t)1>(onnxruntime::OpKernelContext*, cudnnReduceTensorOp_t) const (reduction_ops.cc:636)
==132002== by 0x5ADDFF5: onnxruntime::cuda::ArgMax::ComputeInternal(onnxruntime::OpKernelContext*) const (reduction_ops.h:97)
==132002== by 0x59F20A0: onnxruntime::cuda::CudaKernel::Compute(onnxruntime::OpKernelContext*) const (cuda_common.h:66)
==132002== by 0x67A90D3: onnxruntime::SequentialExecutor::Execute(onnxruntime::SessionState const&, std::vector<int, std::allocator > const&, std::vector<OrtValue, std::allocator > const&, std::vector<int, std::allocator > const&, std::vector<OrtValue, std::allocator >&, std::unordered_map<unsigned long, std::function<onnxruntime::common::Status (onnxruntime::TensorShape const&, OrtMemoryInfo const&, OrtValue&, bool&)>, std::hash, std::equal_to, std::allocator<std::pair<unsigned long const, std::function<onnxruntime::common::Status (onnxruntime::TensorShape const&, OrtMemoryInfo const&, OrtValue&, bool&)> > > > const&, onnxruntime::logging::Logger const&) (sequential_executor.cc:305)
==132002== Conditional jump or move depends on uninitialised value(s)
==132002== at 0xD4347D20: ??? (in /usr/lib/libcudnn_ops_infer.so.8.0.4)
==132002== by 0xD4337142: ??? (in /usr/lib/libcudnn_ops_infer.so.8.0.4)
==132002== by 0xD4208565: cudnnReduceTensor (in /usr/lib/libcudnn_ops_infer.so.8.0.4)
==132002== by 0x5AE3227: onnxruntime::common::Status onnxruntime::cuda::ReduceComputeCore<float, (cudnnReduceTensorIndices_t)1>(onnxruntime::CUDAExecutionProvider&, onnxruntime::Tensor const&, onnxruntime::cuda::PrepareReduceMetadata&, onnxruntime::Tensor&, cudnnReduceTensorOp_t, std::vector<long, std::allocator > const&, bool, bool, bool, bool, onnxruntime::TensorShape const*) (reduction_ops.cc:597)
==132002== by 0x5ADECF9: onnxruntime::common::Status onnxruntime::cuda::ReduceKernel::ComputeImpl<float, (cudnnReduceTensorIndices_t)1>(onnxruntime::OpKernelContext*, cudnnReduceTensorOp_t) const (reduction_ops.cc:636)
==132002== by 0x5ADDFF5: onnxruntime::cuda::ArgMax::ComputeInternal(onnxruntime::OpKernelContext*) const (reduction_ops.h:97)
==132002== by 0x59F20A0: onnxruntime::cuda::CudaKernel::Compute(onnxruntime::OpKernelContext*) const (cuda_common.h:66)
==132002== by 0x67A90D3: onnxruntime::SequentialExecutor::Execute(onnxruntime::SessionState const&, std::vector<int, std::allocator > const&, std::vector<OrtValue, std::allocator > const&, std::vector<int, std::allocator > const&, std::vector<OrtValue, std::allocator >&, std::unordered_map<unsigned long, std::function<onnxruntime::common::Status (onnxruntime::TensorShape const&, OrtMemoryInfo const&, OrtValue&, bool&)>, std::hash, std::equal_to, std::allocator<std::pair<unsigned long const, std::function<onnxruntime::common::Status (onnxruntime::TensorShape const&, OrtMemoryInfo const&, OrtValue&, bool&)> > > > const&, onnxruntime::logging::Logger const&) (sequential_executor.cc:305)
==132002== by 0x678EE21: onnxruntime::utils::ExecuteGraphImpl(onnxruntime::SessionState const&, onnxruntime::FeedsFetchesManager const&, std::vector<OrtValue, std::allocator > const&, std::vector<OrtValue, std::allocator >&, std::unordered_map<unsigned long, std::function<onnxruntime::common::Status (onnxruntime::TensorShape const&, OrtMemoryInfo const&, OrtValue&, bool&)>, std::hash, std::equal_to, std::allocator<std::pair<unsigned long const, std::function<onnxruntime::common::Status (onnxruntime::TensorShape const&, OrtMemoryInfo const&, OrtValue&, bool&)> > > > const&, ExecutionMode, bool const&, onnxruntime::logging::Logger const&, bool) (utils.cc:492)
==132002== by 0x678F277: onnxruntime::utils::ExecuteGraph(onnxruntime::SessionState const&, onnxruntime::FeedsFetchesManager&, std::vector<OrtValue, std::allocator > const&, std::vector<OrtValue, std::allocator >&, ExecutionMode, bool const&, onnxruntime::logging::Logger const&, bool) (utils.cc:516)
==132002== by 0x598BB3B: onnxruntime::InferenceSession::Run(OrtRunOptions const&, std::vector<std::__cxx11::basic_string<char, std::char_traits, std::allocator >, std::allocator<std::__cxx11::basic_string<char, std::char_traits, std::allocator > > > const&, std::vector<OrtValue, std::allocator > const&, std::vector<std::__cxx11::basic_string<char, std::char_traits, std::allocator >, std::allocator<std::__cxx11::basic_string<char, std::char_traits, std::allocator > > > const&, std::vector<OrtValue, std::allocator >, std::vector<OrtDevice, std::allocator > const) (inference_session.cc:1464)
==132002== Conditional jump or move depends on uninitialised value(s)
==132002== at 0xD4347B1F: ??? (in /usr/lib/libcudnn_ops_infer.so.8.0.4)
==132002== by 0xD4337142: ??? (in /usr/lib/libcudnn_ops_infer.so.8.0.4)
==132002== by 0xD4208565: cudnnReduceTensor (in /usr/lib/libcudnn_ops_infer.so.8.0.4)
==132002== by 0x5AE3227: onnxruntime::common::Status onnxruntime::cuda::ReduceComputeCore<float, (cudnnReduceTensorIndices_t)1>(onnxruntime::CUDAExecutionProvider&, onnxruntime::Tensor const&, onnxruntime::cuda::PrepareReduceMetadata&, onnxruntime::Tensor&, cudnnReduceTensorOp_t, std::vector<long, std::allocator > const&, bool, bool, bool, bool, onnxruntime::TensorShape const*) (reduction_ops.cc:597)
==132002== by 0x5ADECF9: onnxruntime::common::Status onnxruntime::cuda::ReduceKernel::ComputeImpl<float, (cudnnReduceTensorIndices_t)1>(onnxruntime::OpKernelContext*, cudnnReduceTensorOp_t) const (reduction_ops.cc:636)
==132002== by 0x5ADDFF5: onnxruntime::cuda::ArgMax::ComputeInternal(onnxruntime::OpKernelContext*) const (reduction_ops.h:97)
==132002== by 0x59F20A0: onnxruntime::cuda::CudaKernel::Compute(onnxruntime::OpKernelContext*) const (cuda_common.h:66)
==132002== by 0x67A90D3: onnxruntime::SequentialExecutor::Execute(onnxruntime::SessionState const&, std::vector<int, std::allocator > const&, std::vector<OrtValue, std::allocator > const&, std::vector<int, std::allocator > const&, std::vector<OrtValue, std::allocator >&, std::unordered_map<unsigned long, std::function<onnxruntime::common::Status (onnxruntime::TensorShape const&, OrtMemoryInfo const&, OrtValue&, bool&)>, std::hash, std::equal_to, std::allocator<std::pair<unsigned long const, std::function<onnxruntime::common::Status (onnxruntime::TensorShape const&, OrtMemoryInfo const&, OrtValue&, bool&)> > > > const&, onnxruntime::logging::Logger const&) (sequential_executor.cc:305)
==132002== Mismatched free() / delete / delete []
==132002== at 0x484065D: operator delete (vg_replace_malloc.c:938)
==132002== by 0x673D0B2: onnxruntime::ProviderHostImpl::HeapFree(void*) (provider_bridge_ort.cc:296)
==132002== by 0xFF01B3F5: operator delete(void*) (provider_bridge_provider.cc:49)
==132002== by 0xFF2BCC2F: std::experimental::filesystem::v1::__cxx11::path::_Cmpt& std::vector<std::experimental::filesystem::v1::__cxx11::path::_Cmpt, std::allocatorstd::experimental::filesystem::v1::__cxx11::path::_Cmpt >::emplace_back<std::__cxx11::basic_string<char, std::char_traits, std::allocator >, std::experimental::filesystem::v1::__cxx11::path::_Type, unsigned long&>(std::__cxx11::basic_string<char, std::char_traits, std::allocator >&&, std::experimental::filesystem::v1::__cxx11::path::_Type&&, unsigned long&) (in /storage/projects/alpr/modules/libonnxruntime/build/Linux/Debug/libonnxruntime_providers_tensorrt.so)
==132002== by 0xFF2BCE35: std::experimental::filesystem::v1::__cxx11::path::_M_add_filename(unsigned long, unsigned long) (in /storage/projects/alpr/modules/libonnxruntime/build/Linux/Debug/libonnxruntime_providers_tensorrt.so)
==132002== by 0xFF2BC211: std::experimental::filesystem::v1::__cxx11::path::_M_split_cmpts() (in /storage/projects/alpr/modules/libonnxruntime/build/Linux/Debug/libonnxruntime_providers_tensorrt.so)
==132002== by 0xFF02817F: std::experimental::filesystem::v1::__cxx11::path::_M_append(std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&) (fs_path.h:437)
==132002== by 0xFF039980: std::enable_if<std::_and<std::_not<std::is_same<std::remove_cv<std::__cxx11::basic_string<char, std::char_traits, std::allocator > >::type, std::experimental::filesystem::v1::__cxx11::path> >, std::_not<std::is_void<std::remove_pointer<std::__cxx11::basic_string<char, std::char_traits, std::allocator > >::type> >, std::experimental::filesystem::v1::__cxx11::path::__constructible_from<std::__cxx11::basic_string<char, std::char_traits, std::allocator >, void> >::value, std::experimental::filesystem::v1::__cxx11::path>::type& std::experimental::filesystem::v1::__cxx11::path::append<std::__cxx11::basic_string<char, std::char_traits, std::allocator > >(std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&) (fs_path.h:273)
==132002== by 0xFF02833D: (anonymous namespace)::GetEnginePath(std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&, std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&) (tensorrt_execution_provider.cc:41)
==132002== by 0xFF032B0E: onnxruntime::TensorrtExecutionProvider::Provider_Compile(std::vector<onnxruntime::Provider_Node*, std::allocatoronnxruntime::Provider_Node* > const&, std::vector<onnxruntime::NodeComputeInfo, std::allocatoronnxruntime::NodeComputeInfo >&)::{lambda(void*, OrtApi const*, OrtKernelContext*)#3}::operator()(void*, OrtApi const*, OrtKernelContext*) const (tensorrt_execution_provider.cc:1052)
==132002== by 0xFF055D62: std::_Function_handler<onnxruntime::common::Status (void*, OrtApi const*, OrtKernelContext*), onnxruntime::TensorrtExecutionProvider::Provider_Compile(std::vector<onnxruntime::Provider_Node*, std::allocatoronnxruntime::Provider_Node* > const&, std::vector<onnxruntime::NodeComputeInfo, std::allocatoronnxruntime::NodeComputeInfo >&)::{lambda(void*, OrtApi const*, OrtKernelContext*)#3}>::_M_invoke(std::_Any_data const&, void*&&, OrtApi const*&&, OrtKernelContext*&&) (std_function.h:286)
==132002== by 0x6718F60: std::function<onnxruntime::common::Status (void*, OrtApi const*, OrtKernelContext*)>::operator()(void*, OrtApi const*, OrtKernelContext*) const (std_function.h:688)
==132002== Address 0x1305056e0 is 0 bytes inside a block of size 95 alloc'd
==132002== at 0x483CFE3: operator new(unsigned long) (vg_replace_malloc.c:417)
==132002== by 0xFF0563E2: void std::__cxx11::basic_string<char, std::char_traits, std::allocator >::_M_construct<char const*>(char const*, char const*, std::forward_iterator_tag) (basic_string.tcc:219)
==132002== by 0xFF2BCE20: std::experimental::filesystem::v1::__cxx11::path::_M_add_filename(unsigned long, unsigned long) (in /storage/projects/alpr/modules/libonnxruntime/build/Linux/Debug/libonnxruntime_providers_tensorrt.so)
==132002== by 0xFF2BC211: std::experimental::filesystem::v1::__cxx11::path::_M_split_cmpts() (in /storage/projects/alpr/modules/libonnxruntime/build/Linux/Debug/libonnxruntime_providers_tensorrt.so)
==132002== by 0xFF02817F: std::experimental::filesystem::v1::__cxx11::path::_M_append(std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&) (fs_path.h:437)
==132002== by 0xFF039980: std::enable_if<std::_and<std::_not<std::is_same<std::remove_cv<std::__cxx11::basic_string<char, std::char_traits, std::allocator > >::type, std::experimental::filesystem::v1::__cxx11::path> >, std::_not<std::is_void<std::remove_pointer<std::__cxx11::basic_string<char, std::char_traits, std::allocator > >::type> >, std::experimental::filesystem::v1::__cxx11::path::__constructible_from<std::__cxx11::basic_string<char, std::char_traits, std::allocator >, void> >::value, std::experimental::filesystem::v1::__cxx11::path>::type& std::experimental::filesystem::v1::__cxx11::path::append<std::__cxx11::basic_string<char, std::char_traits, std::allocator > >(std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&) (fs_path.h:273)
==132002== by 0xFF02833D: (anonymous namespace)::GetEnginePath(std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&, std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&) (tensorrt_execution_provider.cc:41)
==132002== by 0xFF032B0E: onnxruntime::TensorrtExecutionProvider::Provider_Compile(std::vector<onnxruntime::Provider_Node*, std::allocatoronnxruntime::Provider_Node* > const&, std::vector<onnxruntime::NodeComputeInfo, std::allocatoronnxruntime::NodeComputeInfo >&)::{lambda(void*, OrtApi const*, OrtKernelContext*)#3}::operator()(void*, OrtApi const*, OrtKernelContext*) const (tensorrt_execution_provider.cc:1052)
==132002== by 0xFF055D62: std::_Function_handler<onnxruntime::common::Status (void*, OrtApi const*, OrtKernelContext*), onnxruntime::TensorrtExecutionProvider::Provider_Compile(std::vector<onnxruntime::Provider_Node*, std::allocatoronnxruntime::Provider_Node* > const&, std::vector<onnxruntime::NodeComputeInfo, std::allocatoronnxruntime::NodeComputeInfo >&)::{lambda(void*, OrtApi const*, OrtKernelContext*)#3}>::_M_invoke(std::_Any_data const&, void*&&, OrtApi const*&&, OrtKernelContext*&&) (std_function.h:286)
==132002== by 0x6718F60: std::function<onnxruntime::common::Status (void*, OrtApi const*, OrtKernelContext*)>::operator()(void*, OrtApi const*, OrtKernelContext*) const (std_function.h:688)
==132002== by 0x6716B54: onnxruntime::FunctionKernel::Compute(onnxruntime::OpKernelContext*) const (func_kernel.h:41)
==132002== by 0x67A90D3: onnxruntime::SequentialExecutor::Execute(onnxruntime::SessionState const&, std::vector<int, std::allocator > const&, std::vector<OrtValue, std::allocator > const&, std::vector<int, std::allocator > const&, std::vector<OrtValue, std::allocator >&, std::unordered_map<unsigned long, std::function<onnxruntime::common::Status (onnxruntime::TensorShape const&, OrtMemoryInfo const&, OrtValue&, bool&)>, std::hash, std::equal_to, std::allocator<std::pair<unsigned long const, std::function<onnxruntime::common::Status (onnxruntime::TensorShape const&, OrtMemoryInfo const&, OrtValue&, bool&)> > > > const&, onnxruntime::logging::Logger const&) (sequential_executor.cc:305)
==132002== Mismatched free() / delete / delete []
==132002== at 0x483F651: operator delete(void*) (vg_replace_malloc.c:802)
==132002== by 0x59EAA8D: __gnu_cxx::new_allocator<std::unique_ptr<onnxruntime::ComputeCapability, std::default_deleteonnxruntime::ComputeCapability > >::deallocate(std::unique_ptr<onnxruntime::ComputeCapability, std::default_deleteonnxruntime::ComputeCapability >, unsigned long) (new_allocator.h:128)
==132002== by 0x59E70D7: std::allocator_traits<std::allocator<std::unique_ptr<onnxruntime::ComputeCapability, std::default_deleteonnxruntime::ComputeCapability > > >::deallocate(std::allocator<std::unique_ptr<onnxruntime::ComputeCapability, std::default_deleteonnxruntime::ComputeCapability > >&, std::unique_ptr<onnxruntime::ComputeCapability, std::default_deleteonnxruntime::ComputeCapability >, unsigned long) (alloc_traits.h:470)
==132002== by 0x59E326D: std::_Vector_base<std::unique_ptr<onnxruntime::ComputeCapability, std::default_deleteonnxruntime::ComputeCapability >, std::allocator<std::unique_ptr<onnxruntime::ComputeCapability, std::default_deleteonnxruntime::ComputeCapability > > >::_M_deallocate(std::unique_ptr<onnxruntime::ComputeCapability, std::default_deleteonnxruntime::ComputeCapability >, unsigned long) (stl_vector.h:351)
==132002== by 0x59DF6AD: std::_Vector_base<std::unique_ptr<onnxruntime::ComputeCapability, std::default_deleteonnxruntime::ComputeCapability >, std::allocator<std::unique_ptr<onnxruntime::ComputeCapability, std::default_deleteonnxruntime::ComputeCapability > > >::~_Vector_base() (stl_vector.h:332)
==132002== by 0x59DF702: std::vector<std::unique_ptr<onnxruntime::ComputeCapability, std::default_deleteonnxruntime::ComputeCapability >, std::allocator<std::unique_ptr<onnxruntime::ComputeCapability, std::default_deleteonnxruntime::ComputeCapability > > >::~vector() (stl_vector.h:680)
==132002== by 0x67180E9: onnxruntime::GraphPartitioner::Partition(onnxruntime::Graph&, bool, onnxruntime::FuncManager&) const (graph_partitioner.cc:179)
==132002== by 0x5985600: onnxruntime::InferenceSession::TransformGraph(onnxruntime::Graph&, onnxruntime::GraphTransformerManager const&, onnxruntime::ExecutionProviders const&, onnxruntime::KernelRegistryManager&, onnxruntime::InsertCastTransformer const&, onnxruntime::SessionState&) (inference_session.cc:803)
==132002== by 0x59885EB: onnxruntime::InferenceSession::Initialize() (inference_session.cc:1116)
==132002== by 0x590B7EF: (anonymous namespace)::InitializeSession(OrtSessionOptions const, std::unique_ptr<onnxruntime::InferenceSession, std::default_deleteonnxruntime::InferenceSession >&) (onnxruntime_c_api.cc:469)
==132002== by 0x590BCC0: OrtApis::CreateSessionFromArray(OrtEnv const*, void const*, unsigned long, OrtSessionOptions const*, OrtSession**) (onnxruntime_c_api.cc:508)
The text was updated successfully, but these errors were encountered: