diff --git a/src/TensorFlowNet.Benchmarks/Leak/SavedModelCleanup.cs b/src/TensorFlowNet.Benchmarks/Leak/SavedModelCleanup.cs new file mode 100644 index 00000000..e9e1e75f --- /dev/null +++ b/src/TensorFlowNet.Benchmarks/Leak/SavedModelCleanup.cs @@ -0,0 +1,31 @@ +using BenchmarkDotNet.Attributes; +using System; +using System.Collections.Generic; +using System.IO; +using System.Linq; +using System.Reflection; +using System.Text; +using System.Threading.Tasks; + +namespace Tensorflow.Benchmark.Leak +{ + + public class SavedModelCleanup + { + [Benchmark] + public void Run() + { + var modelDir = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location); + var ClassifierModelPath = Path.Combine(modelDir, "Leak", "TestModel", "saved_model"); + + for (var i = 0; i < 1000; i++) + { + var session = Session.LoadFromSavedModel(ClassifierModelPath); + + session.graph.Exit(); + session.graph.Dispose(); + session.Dispose(); + } + } + } +} diff --git a/src/TensorFlowNet.Benchmarks/Leak/TestModel/saved_model/saved_model.pb b/src/TensorFlowNet.Benchmarks/Leak/TestModel/saved_model/saved_model.pb new file mode 100644 index 00000000..f75f2856 Binary files /dev/null and b/src/TensorFlowNet.Benchmarks/Leak/TestModel/saved_model/saved_model.pb differ diff --git a/src/TensorFlowNet.Benchmarks/Leak/TestModel/saved_model/variables/variables.data-00000-of-00001 b/src/TensorFlowNet.Benchmarks/Leak/TestModel/saved_model/variables/variables.data-00000-of-00001 new file mode 100644 index 00000000..4c7f99db Binary files /dev/null and b/src/TensorFlowNet.Benchmarks/Leak/TestModel/saved_model/variables/variables.data-00000-of-00001 differ diff --git a/src/TensorFlowNet.Benchmarks/Leak/TestModel/saved_model/variables/variables.index b/src/TensorFlowNet.Benchmarks/Leak/TestModel/saved_model/variables/variables.index new file mode 100644 index 00000000..ee0efb7c Binary files /dev/null and b/src/TensorFlowNet.Benchmarks/Leak/TestModel/saved_model/variables/variables.index differ diff --git a/src/TensorFlowNet.Benchmarks/Tensorflow.Benchmark.csproj b/src/TensorFlowNet.Benchmarks/Tensorflow.Benchmark.csproj index 6b2c497f..ea799b02 100644 --- a/src/TensorFlowNet.Benchmarks/Tensorflow.Benchmark.csproj +++ b/src/TensorFlowNet.Benchmarks/Tensorflow.Benchmark.csproj @@ -44,4 +44,20 @@ + + + + + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + +