ArmNN
 24.08
GpuFsaContextControl.hpp
Go to the documentation of this file.
1 //
2 // Copyright © 2023 Arm Ltd and Contributors. All rights reserved.
3 // SPDX-License-Identifier: MIT
4 //
5 #pragma once
6 
8 
9 namespace armnn
10 {
11 
12 // ARM Compute OpenCL context control.
14 {
15 public:
16 
17  GpuFsaContextControl(arm_compute::CLTuner* = nullptr,
18  arm_compute::CLGEMMHeuristicsHandle* = nullptr,
19  bool profilingEnabled = false);
20 
21  virtual ~GpuFsaContextControl();
22 
23  void LoadOpenClRuntime();
24 
25  // Users should call this (after freeing all of the cl::Context objects they use)
26  // to release the cached memory used by the compute library.
27  void UnloadOpenClRuntime();
28 
29  // Clear the CL cache, without losing the tuned parameter settings.
30  void ClearClCache();
31 
32 private:
33 
34  void DoLoadOpenClRuntime(bool updateTunedParameters);
35 
36  arm_compute::CLTuner* m_Tuner;
37  arm_compute::CLGEMMHeuristicsHandle* m_HeuristicsHandle;
38 
39  bool m_ProfilingEnabled;
40 };
41 
42 } // namespace armnn
armnn::GpuFsaContextControl::~GpuFsaContextControl
virtual ~GpuFsaContextControl()
Definition: GpuFsaContextControl.cpp:73
armnn::GpuFsaContextControl
Definition: GpuFsaContextControl.hpp:13
armnn::GpuFsaContextControl::UnloadOpenClRuntime
void UnloadOpenClRuntime()
Definition: GpuFsaContextControl.cpp:97
armnn::GpuFsaContextControl::LoadOpenClRuntime
void LoadOpenClRuntime()
Definition: GpuFsaContextControl.cpp:92
armnn::GpuFsaContextControl::GpuFsaContextControl
GpuFsaContextControl(arm_compute::CLTuner *=nullptr, arm_compute::CLGEMMHeuristicsHandle *=nullptr, bool profilingEnabled=false)
Definition: GpuFsaContextControl.cpp:27
armnn
Copyright (c) 2021 ARM Limited and Contributors.
Definition: 01_00_quick_start.dox:6
ArmComputeTuningUtils.hpp
armnn::GpuFsaContextControl::ClearClCache
void ClearClCache()
Definition: GpuFsaContextControl.cpp:164