diff --git a/examples/graph_alexnet.cpp b/examples/graph_alexnet.cpp
index 6ba3ebc..885db33 100644
--- a/examples/graph_alexnet.cpp
+++ b/examples/graph_alexnet.cpp
@@ -55,8 +55,6 @@
         // Set target. 0 (NEON), 1 (OpenCL), 2 (OpenCL with Tuner). By default it is NEON
         const int target                   = argc > 1 ? std::strtol(argv[1], nullptr, 10) : 0;
         Target    target_hint              = set_target_hint2(target);
-        bool      enable_tuning            = (target == 2);
-        bool      enable_memory_management = true;
 
         // TODO (geopin01) : Get GPU target somehow and set gemm also for midgard ?
         const bool        is_gemm_convolution5x5     = (target_hint == Target::NEON);
@@ -163,7 +161,10 @@
               << OutputLayer(get_output_accessor(label, 5));
 
         // Finalize graph
-        graph.finalize(target_hint, enable_tuning, enable_memory_management);
+        GraphConfig config;
+        config.use_function_memory_manager = true;
+        config.use_tuner                   = (target == 2);
+        graph.finalize(target_hint, config);
     }
     void do_run() override
     {
