aboutsummaryrefslogtreecommitdiff
path: root/examples/graph_inception_v4.cpp
diff options
context:
space:
mode:
authorPablo Tello <pablo.tello@arm.com>2019-07-11 16:50:37 +0100
committerPablo Marquez <pablo.tello@arm.com>2019-07-18 14:55:49 +0000
commitdb9116ff15170ff734aad0300b46c48abc2a3b7b (patch)
tree5846ab774aa5e6725e9144841b745e1ad2641583 /examples/graph_inception_v4.cpp
parent06be6f8d2a316a307fa623150f8adf8f9c3416c5 (diff)
downloadComputeLibrary-db9116ff15170ff734aad0300b46c48abc2a3b7b.tar.gz
COMPMID-2443: CL example use program cache by default.
Change-Id: I9db5cf4ce98e86f7488f4041f0d0247d3d0cd663 Signed-off-by: Pablo Tello <pablo.tello@arm.com> Reviewed-on: https://review.mlplatform.org/c/1528 Tested-by: Arm Jenkins <bsgcomp@arm.com> Comments-Addressed: Arm Jenkins <bsgcomp@arm.com> Reviewed-by: Michele Di Giorgio <michele.digiorgio@arm.com> Reviewed-by: VidhyaSudhan Loganathan <vidhyasudhan.loganathan@arm.com>
Diffstat (limited to 'examples/graph_inception_v4.cpp')
-rw-r--r--examples/graph_inception_v4.cpp22
1 files changed, 22 insertions, 0 deletions
diff --git a/examples/graph_inception_v4.cpp b/examples/graph_inception_v4.cpp
index 3ea2b2fd1c..15fd049fa3 100644
--- a/examples/graph_inception_v4.cpp
+++ b/examples/graph_inception_v4.cpp
@@ -27,6 +27,8 @@
#include "utils/GraphUtils.h"
#include "utils/Utils.h"
+#include <chrono>
+
using namespace arm_compute::utils;
using namespace arm_compute::graph::frontend;
using namespace arm_compute::graph_utils;
@@ -154,8 +156,28 @@ public:
config.tuner_mode = common_params.tuner_mode;
config.tuner_file = common_params.tuner_file;
+ const auto config_start_time = std::chrono::high_resolution_clock::now();
+
+ // Load the precompiled kernels from a file into the kernel library, in this way the next time they are needed
+ // compilation won't be required.
+ if(common_params.enable_cl_cache)
+ {
+ restore_program_cache_from_file();
+ }
+
graph.finalize(common_params.target, config);
+ const auto config_end_time = std::chrono::high_resolution_clock::now();
+ const auto time_elapsed = config_end_time - config_start_time;
+ const auto time_elapsed_ms = std::chrono::duration_cast<std::chrono::milliseconds>(time_elapsed).count();
+ std::cout << "Configuration time " << time_elapsed_ms << " ms " << std::endl;
+
+ // Save the opencl kernels to a file
+ if(common_opts.enable_cl_cache)
+ {
+ save_program_cache_to_file();
+ }
+
return true;
}