Valgrind показывает утечку для TF_Session - PullRequest
0 голосов
/ 24 марта 2019

Valgrind показывает Leak_DefiniteLost внутри libtensorflow.so. Это сообщение Valgrind для простой инициации сеанса:

- operator new(unsigned long) tensorflow::(anonymous   
   namespace)::PosixEnv::StartThread(tensorflow::ThreadOptions const&,  
   std::string const&, std::function<void ()>)
   tensorflow::thread::ThreadPool::ThreadPool(tensorflow::Env*, 
   tensorflow::ThreadOptions const&, std::string const&, int, bool)
   tensorflow::thread::ThreadPool::ThreadPool(tensorflow::Env*,    
   std::string const&, int)
   tensorflow::LocalDevice::EigenThreadPoolInfo::EigenThreadPoolInfo(tensor
   flow::SessionOptions const&)

   tensorflow::LocalDevice::LocalDevice(tensorflow::SessionOptions    
   const&, tensorflow::DeviceAttributes const&)   
   tensorflow::ThreadPoolDevice::ThreadPoolDevice(tensorflow::SessionOption
   s const&, std::string const&, 
   tensorflow::gtl::IntType<tensorflow::Bytes_tag_, long long>, 
   tensorflow::DeviceLocality const&, tensorflow::Allocator*)   
   tensorflow::ThreadPoolDeviceFactory::CreateDevices(tensorflow::SessionOptions
   const&, std::string const&, std::vector<tensorflow::Device*,
   std::allocator>*)
   tensorflow::DeviceFactory::AddDevices(tensorflow::SessionOptions
   const&, std::string const&, std::vector<tensorflow::Device*,
   std::allocator>*)
   tensorflow::DirectSessionFactory::NewSession(tensorflow::SessionOptions
   const&, tensorflow::Session**)
   tensorflow::NewSession(tensorflow::SessionOptions const&,
   tensorflow::Session**) TF_NewSession

Код вызвал эту утечку:

TF_Status* status = TF_NewStatus();
TF_Graph* graph = TF_NewGraph();
TF_SessionOptions* options = TF_NewSessionOptions();
TF_Session* sess = TF_NewSession(graph, options, status);
TF_DeleteSessionOptions(options);

TF_CloseSession(sess, status);
TF_DeleteSession(sess, status);


TF_DeleteGraph(graph); 
TF_DeleteStatus(status);

Пожалуйста, помогите понять, если и как я могу это исправить. Дополнительно эта утечка появляется, только если я связываю opencv, если я отключаю opencv, используя утечку исчезнуть

...