diff --git a/src/runtime/CL/functions/CLGEMM.cpp b/src/runtime/CL/functions/CLGEMM.cpp
index cf41ecc..bff5781 100644
--- a/src/runtime/CL/functions/CLGEMM.cpp
+++ b/src/runtime/CL/functions/CLGEMM.cpp
@@ -92,8 +92,8 @@
 } // namespace
 
 CLGEMM::CLGEMM(std::shared_ptr<IMemoryManager> memory_manager)
-    : _memory_group(std::move(memory_manager)), _interleave_kernel(), _transpose_kernel(), _mm_kernel(), _ma_kernel(), _tmp_a(), _tmp_b(), _is_interleaved_transposed(false), _run_addition(false),
-      _is_first_run(true), _reshape_b_only_on_first_run(false)
+    : _memory_group(std::move(memory_manager)), _interleave_kernel(), _transpose_kernel(), _mm_kernel(), _ma_kernel(), _tmp_a(), _tmp_b(), _original_b(nullptr), _is_interleaved_transposed(false),
+      _run_addition(false), _is_first_run(true), _reshape_b_only_on_first_run(false)
 {
 }
 
@@ -104,6 +104,9 @@
     // Perform validation step
     ARM_COMPUTE_ERROR_THROW_ON(validate_arguments(a->info(), b->info(), c, output->info(), alpha, beta, gemm_info));
 
+    // Store original b matrix
+    _original_b = b;
+
     // Check if we need to reshape the matrix B only on the first run
     _reshape_b_only_on_first_run = gemm_info.reshape_b_only_on_first_run();
 
@@ -192,7 +195,11 @@
             // Run transpose kernel
             CLScheduler::get().enqueue(_transpose_kernel, false);
 
-            _is_first_run = false;
+            // Mark original b matrix as unused
+            if(_reshape_b_only_on_first_run)
+            {
+                _original_b->mark_as_unused();
+            }
         }
         else if(!_reshape_b_only_on_first_run)
         {
@@ -211,4 +218,6 @@
     }
 
     _memory_group.release();
+
+    _is_first_run = false;
 }
