From f41634eaba2b10ab5278f15a615ddd0eb80a3928 Mon Sep 17 00:00:00 2001 From: Nadezhda Ageeva Date: Sat, 13 Mar 2021 16:41:39 +0300 Subject: [PATCH] [IE Tools] Fix seed for random generator in benchmark_app(s) to have reproducable data between runs of the same application (#4757) --- inference-engine/samples/benchmark_app/inputs_filling.cpp | 3 +-- tools/benchmark/utils/inputs_filling.py | 5 +++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/inference-engine/samples/benchmark_app/inputs_filling.cpp b/inference-engine/samples/benchmark_app/inputs_filling.cpp index 7c6f9f8dfb4..ff64df6bcad 100644 --- a/inference-engine/samples/benchmark_app/inputs_filling.cpp +++ b/inference-engine/samples/benchmark_app/inputs_filling.cpp @@ -168,8 +168,7 @@ void fillBlobRandom(Blob::Ptr& inputBlob, auto minputHolder = minput->wmap(); auto inputBlobData = minputHolder.as(); - std::random_device rd; - std::mt19937 gen(rd()); + std::mt19937 gen(0); uniformDistribution distribution(rand_min, rand_max); for (size_t i = 0; i < inputBlob->size(); i++) { inputBlobData[i] = static_cast(distribution(gen)); diff --git a/tools/benchmark/utils/inputs_filling.py b/tools/benchmark/utils/inputs_filling.py index 46968674da2..394a9a5451a 100644 --- a/tools/benchmark/utils/inputs_filling.py +++ b/tools/benchmark/utils/inputs_filling.py @@ -212,6 +212,7 @@ def fill_blob_with_random(layer): # np.random.uniform excludes high: add 1 to have it generated if np.dtype(dtype).kind in ['i', 'u', 'b']: rand_max += 1 + rs = np.random.RandomState(np.random.MT19937(np.random.SeedSequence(0))) if layer.shape: - return np.random.uniform(rand_min, rand_max, layer.shape).astype(dtype) - return (dtype)(np.random.uniform(rand_min, rand_max)) + return rs.uniform(rand_min, rand_max, layer.shape).astype(dtype) + return (dtype)(rs.uniform(rand_min, rand_max))