Skip to content

Commit ab70aa8

Browse files
committed
feat: add profiling tracepoints to CPU kernel implementations (Part 1)
Instrument key CPU kernel entry points in src/cpu/kernels/* with tracepoints to enable lightweight runtime profiling. These tracepoints leverage the ACL_PROFILE macros and form the basis for collecting execution timing and behavior metrics. This is the first step in integrating end-to-end profiling support. Partially Resolves: COMPMID-8330 Signed-off-by: Walid Ben Romdhane <[email protected]> Change-Id: Ifc7e3d6f1d049f7ad051ee8f58b8934013456dc8 Reviewed-on: https://review.mlplatform.org/c/ml/ComputeLibrary/+/14773 Benchmark: Arm Jenkins <[email protected]> Tested-by: Arm Jenkins <[email protected]> Comments-Addressed: Arm Jenkins <[email protected]> Reviewed-by: Dongsung Kim <[email protected]>
1 parent c1d8580 commit ab70aa8

39 files changed

+239
-35
lines changed

src/common/utils/profile/acl_profile.h

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -37,9 +37,8 @@
3737
#define ARM_COMPUTE_PROF_CAT_SCHEDULER "SCHEDULER"
3838

3939
// Define ACL profile levels
40-
#define ARM_COMPUTE_PROF_L0 0
41-
#define ARM_COMPUTE_PROF_L1 1
42-
#define ARM_COMPUTE_PROF_L2 2
40+
#define ARM_COMPUTE_PROF_LVL_CPU 0
41+
#define ARM_COMPUTE_PROF_LVL_GPU 1
4342

4443
#define ARM_COMPUTE_TRACE_EVENT(category, level, name) \
4544
(void)category; \

src/cpu/kernels/CpuActivationKernel.cpp

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@
2727
#include "arm_compute/core/TensorInfo.h"
2828
#include "arm_compute/core/Utils.h"
2929

30+
#include "src/common/utils/profile/acl_profile.h"
3031
#include "src/core/common/Registrars.h"
3132
#include "src/core/CPP/Validate.h"
3233
#include "src/core/helpers/AutoConfiguration.h"
@@ -199,6 +200,7 @@ void init_lut(ActivationLayerInfo::ActivationFunction act_func,
199200

200201
void CpuActivationKernel::configure(const ITensorInfo *src, ITensorInfo *dst, ActivationLayerInfo activation_info)
201202
{
203+
ARM_COMPUTE_TRACE_EVENT(ARM_COMPUTE_PROF_CAT_CPU, ARM_COMPUTE_PROF_LVL_CPU, "CpuActivationKernel::configure");
202204
ARM_COMPUTE_UNUSED(dst);
203205
ARM_COMPUTE_ERROR_ON_NULLPTR(src);
204206
ARM_COMPUTE_ERROR_THROW_ON(CpuActivationKernel::validate(src, dst, activation_info));
@@ -248,9 +250,9 @@ void CpuActivationKernel::configure(const ITensorInfo *src, ITensorInfo *dst, Ac
248250
Status
249251
CpuActivationKernel::validate(const ITensorInfo *src, const ITensorInfo *dst, const ActivationLayerInfo &act_info)
250252
{
253+
ARM_COMPUTE_TRACE_EVENT(ARM_COMPUTE_PROF_CAT_CPU, ARM_COMPUTE_PROF_LVL_CPU, "CpuActivationKernel::validate");
251254
ARM_COMPUTE_UNUSED(act_info);
252255
ARM_COMPUTE_RETURN_ON_ERROR(validate_arguments(src, dst, act_info));
253-
254256
return Status{};
255257
}
256258

@@ -264,6 +266,7 @@ size_t CpuActivationKernel::get_mws(const CPUInfo &platform, size_t thread_count
264266

265267
void CpuActivationKernel::run_op(ITensorPack &tensors, const Window &window, const ThreadInfo &info)
266268
{
269+
ARM_COMPUTE_TRACE_EVENT(ARM_COMPUTE_PROF_CAT_CPU, ARM_COMPUTE_PROF_LVL_CPU, "CpuActivationKernel::run_op");
267270
// Early exit on disabled activation
268271
if (!_act_info.enabled())
269272
{

src/cpu/kernels/CpuAddKernel.cpp

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright (c) 2021-2022, 2024 Arm Limited.
2+
* Copyright (c) 2021-2022, 2024-2025 Arm Limited.
33
*
44
* SPDX-License-Identifier: MIT
55
*
@@ -27,6 +27,7 @@
2727
#include "arm_compute/core/TensorInfo.h"
2828
#include "arm_compute/core/Validate.h"
2929

30+
#include "src/common/utils/profile/acl_profile.h"
3031
#include "src/core/common/Registrars.h"
3132
#include "src/core/CPP/Validate.h"
3233
#include "src/core/helpers/AutoConfiguration.h"
@@ -157,6 +158,7 @@ validate_arguments(const ITensorInfo &src0, const ITensorInfo &src1, const ITens
157158

158159
void CpuAddKernel::configure(const ITensorInfo *src0, const ITensorInfo *src1, ITensorInfo *dst, ConvertPolicy policy)
159160
{
161+
ARM_COMPUTE_TRACE_EVENT(ARM_COMPUTE_PROF_CAT_CPU, ARM_COMPUTE_PROF_LVL_CPU, "CpuAddKernel::configure");
160162
ARM_COMPUTE_ERROR_ON_NULLPTR(src0, src1, dst);
161163
ARM_COMPUTE_ERROR_THROW_ON(validate_arguments(*src0, *src1, *dst, policy));
162164

@@ -191,6 +193,7 @@ void CpuAddKernel::configure(const ITensorInfo *src0, const ITensorInfo *src1, I
191193
Status
192194
CpuAddKernel::validate(const ITensorInfo *src0, const ITensorInfo *src1, const ITensorInfo *dst, ConvertPolicy policy)
193195
{
196+
ARM_COMPUTE_TRACE_EVENT(ARM_COMPUTE_PROF_CAT_CPU, ARM_COMPUTE_PROF_LVL_CPU, "CpuAddKernel::validate");
194197
ARM_COMPUTE_RETURN_ERROR_ON_NULLPTR(src0, src1, dst);
195198

196199
ARM_COMPUTE_RETURN_ON_ERROR(validate_arguments(*src0, *src1, *dst, policy));
@@ -200,6 +203,7 @@ CpuAddKernel::validate(const ITensorInfo *src0, const ITensorInfo *src1, const I
200203

201204
void CpuAddKernel::run_op(ITensorPack &tensors, const Window &window, const ThreadInfo &info)
202205
{
206+
ARM_COMPUTE_TRACE_EVENT(ARM_COMPUTE_PROF_CAT_CPU, ARM_COMPUTE_PROF_LVL_CPU, "CpuAddKernel::run_op");
203207
ARM_COMPUTE_UNUSED(info);
204208
ARM_COMPUTE_ERROR_ON_UNCONFIGURED_KERNEL(this);
205209
ARM_COMPUTE_ERROR_ON_INVALID_SUBWINDOW(ICpuKernel::window(), window);

src/cpu/kernels/CpuAddMulAddKernel.cpp

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright (c) 2023 Arm Limited.
2+
* Copyright (c) 2023, 2025 Arm Limited.
33
*
44
* SPDX-License-Identifier: MIT
55
*
@@ -27,6 +27,7 @@
2727
#include "arm_compute/core/TensorInfo.h"
2828
#include "arm_compute/core/Validate.h"
2929

30+
#include "src/common/utils/profile/acl_profile.h"
3031
#include "src/core/common/Registrars.h"
3132
#include "src/core/CPP/Validate.h"
3233
#include "src/core/helpers/AutoConfiguration.h"
@@ -127,6 +128,7 @@ void CpuAddMulAddKernel::configure(const ITensorInfo *input1,
127128
ConvertPolicy policy,
128129
const ActivationLayerInfo &act_info)
129130
{
131+
ARM_COMPUTE_TRACE_EVENT(ARM_COMPUTE_PROF_CAT_CPU, ARM_COMPUTE_PROF_LVL_CPU, "CpuAddMulAddKernel::configure");
130132
ARM_COMPUTE_UNUSED(bn_mul, bn_add, input2);
131133
ARM_COMPUTE_ERROR_ON_NULLPTR(input1, input2, bn_add, bn_mul, final_output);
132134
ARM_COMPUTE_ERROR_THROW_ON(
@@ -167,6 +169,7 @@ Status CpuAddMulAddKernel::validate(const ITensorInfo *input1,
167169
ConvertPolicy policy,
168170
const ActivationLayerInfo &act_info)
169171
{
172+
ARM_COMPUTE_TRACE_EVENT(ARM_COMPUTE_PROF_CAT_CPU, ARM_COMPUTE_PROF_LVL_CPU, "CpuAddMulAddKernel::validate");
170173
ARM_COMPUTE_RETURN_ERROR_ON_NULLPTR(input1, input2, bn_mul, bn_add, final_output);
171174

172175
ARM_COMPUTE_RETURN_ON_ERROR(
@@ -177,6 +180,7 @@ Status CpuAddMulAddKernel::validate(const ITensorInfo *input1,
177180

178181
void CpuAddMulAddKernel::run_op(ITensorPack &tensors, const Window &window, const ThreadInfo &info)
179182
{
183+
ARM_COMPUTE_TRACE_EVENT(ARM_COMPUTE_PROF_CAT_CPU, ARM_COMPUTE_PROF_LVL_CPU, "CpuAddMulAddKernel::run_op");
180184
ARM_COMPUTE_UNUSED(info);
181185

182186
ARM_COMPUTE_ERROR_ON_UNCONFIGURED_KERNEL(this);

src/cpu/kernels/CpuCastKernel.cpp

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright (c) 2016-2024 Arm Limited.
2+
* Copyright (c) 2016-2025 Arm Limited.
33
*
44
* SPDX-License-Identifier: MIT
55
*
@@ -29,6 +29,7 @@
2929
#include "arm_compute/core/TensorInfo.h"
3030
#include "arm_compute/core/Validate.h"
3131

32+
#include "src/common/utils/profile/acl_profile.h"
3233
#include "src/core/common/Registrars.h"
3334
#include "src/core/CPP/Validate.h"
3435
#include "src/core/helpers/AutoConfiguration.h"
@@ -162,6 +163,7 @@ Status validate_arguments(const ITensorInfo *src, const ITensorInfo *dst, Conver
162163

163164
void CpuCastKernel::configure(const ITensorInfo *src, ITensorInfo *dst, ConvertPolicy policy)
164165
{
166+
ARM_COMPUTE_TRACE_EVENT(ARM_COMPUTE_PROF_CAT_CPU, ARM_COMPUTE_PROF_LVL_CPU, "CpuCastKernel::configure");
165167
ARM_COMPUTE_ERROR_ON_NULLPTR(src, dst);
166168

167169
// Auto initialize dst shape if not initialized (We can only auto-configure the shape, datatype must be given)
@@ -179,6 +181,7 @@ void CpuCastKernel::configure(const ITensorInfo *src, ITensorInfo *dst, ConvertP
179181

180182
Status CpuCastKernel::validate(const ITensorInfo *src, const ITensorInfo *dst, ConvertPolicy policy)
181183
{
184+
ARM_COMPUTE_TRACE_EVENT(ARM_COMPUTE_PROF_CAT_CPU, ARM_COMPUTE_PROF_LVL_CPU, "CpuCastKernel::validate");
182185
ARM_COMPUTE_RETURN_ON_ERROR(validate_arguments(src, dst, policy));
183186
return Status{};
184187
}
@@ -270,6 +273,7 @@ convert64(Iterator &src, Iterator &dst, const Window &win, int window_start_x, i
270273

271274
void CpuCastKernel::run_op(ITensorPack &tensors, const Window &window, const ThreadInfo &info)
272275
{
276+
ARM_COMPUTE_TRACE_EVENT(ARM_COMPUTE_PROF_CAT_CPU, ARM_COMPUTE_PROF_LVL_CPU, "CpuCastKernel::run_op");
273277
ARM_COMPUTE_UNUSED(info);
274278
ARM_COMPUTE_ERROR_ON_UNCONFIGURED_KERNEL(this);
275279
ARM_COMPUTE_ERROR_ON_INVALID_SUBWINDOW(IKernel::window(), window);

src/cpu/kernels/CpuCol2ImKernel.cpp

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright (c) 2017-2021 Arm Limited.
2+
* Copyright (c) 2017-2021, 2025 Arm Limited.
33
*
44
* SPDX-License-Identifier: MIT
55
*
@@ -32,6 +32,7 @@
3232
#include "arm_compute/core/utils/misc/ShapeCalculator.h"
3333
#include "arm_compute/core/Validate.h"
3434

35+
#include "src/common/utils/profile/acl_profile.h"
3536
#include "src/core/helpers/AutoConfiguration.h"
3637
#include "src/core/helpers/WindowHelpers.h"
3738

@@ -64,6 +65,7 @@ Status validate_arguments(const ITensorInfo *src, const ITensorInfo *dst, const
6465

6566
void CpuCol2ImKernel::configure(const ITensorInfo *src, ITensorInfo *dst, const Size2D &convolved_dims)
6667
{
68+
ARM_COMPUTE_TRACE_EVENT(ARM_COMPUTE_PROF_CAT_CPU, ARM_COMPUTE_PROF_LVL_CPU, "CpuCol2ImKernel::configure");
6769
ARM_COMPUTE_ERROR_ON_NULLPTR(src, dst);
6870
ARM_COMPUTE_ERROR_THROW_ON(validate_arguments(src, dst, convolved_dims));
6971

@@ -81,12 +83,14 @@ void CpuCol2ImKernel::configure(const ITensorInfo *src, ITensorInfo *dst, const
8183

8284
Status CpuCol2ImKernel::validate(const ITensorInfo *src, const ITensorInfo *output, const Size2D &convolved_dims)
8385
{
86+
ARM_COMPUTE_TRACE_EVENT(ARM_COMPUTE_PROF_CAT_CPU, ARM_COMPUTE_PROF_LVL_CPU, "CpuCol2ImKernel::validate");
8487
ARM_COMPUTE_RETURN_ON_ERROR(validate_arguments(src, output, convolved_dims));
8588
return Status{};
8689
}
8790

8891
void CpuCol2ImKernel::run_op(ITensorPack &tensors, const Window &window, const ThreadInfo &info)
8992
{
93+
ARM_COMPUTE_TRACE_EVENT(ARM_COMPUTE_PROF_CAT_CPU, ARM_COMPUTE_PROF_LVL_CPU, "CpuCol2ImKernel::run_op");
9094
ARM_COMPUTE_UNUSED(info);
9195
ARM_COMPUTE_ERROR_ON_UNCONFIGURED_KERNEL(this);
9296
ARM_COMPUTE_ERROR_ON_INVALID_SUBWINDOW(ICpuKernel::window(), window);

src/cpu/kernels/CpuConcatenateBatchKernel.cpp

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright (c) 2019-2021 Arm Limited.
2+
* Copyright (c) 2019-2021, 2025 Arm Limited.
33
*
44
* SPDX-License-Identifier: MIT
55
*
@@ -31,6 +31,7 @@
3131
#include "arm_compute/core/Validate.h"
3232
#include "arm_compute/core/Window.h"
3333

34+
#include "src/common/utils/profile/acl_profile.h"
3435
#include "src/core/helpers/AutoConfiguration.h"
3536
#include "src/core/helpers/WindowHelpers.h"
3637
#include "src/core/NEON/NEAsymm.h"
@@ -158,6 +159,7 @@ Status validate_arguments(const ITensorInfo *src, unsigned int batch_offset, con
158159

159160
void CpuConcatenateBatchKernel::configure(const ITensorInfo *src, unsigned int batch_offset, ITensorInfo *dst)
160161
{
162+
ARM_COMPUTE_TRACE_EVENT(ARM_COMPUTE_PROF_CAT_CPU, ARM_COMPUTE_PROF_LVL_CPU, "CpuConcatenateBatchKernel::configure");
161163
ARM_COMPUTE_ERROR_ON_NULLPTR(src, dst);
162164
ARM_COMPUTE_ERROR_THROW_ON(validate_arguments(src, batch_offset, dst));
163165

@@ -195,12 +197,14 @@ Status CpuConcatenateBatchKernel::validate(const arm_compute::ITensorInfo *src,
195197
unsigned int batch_offset,
196198
const arm_compute::ITensorInfo *dst)
197199
{
200+
ARM_COMPUTE_TRACE_EVENT(ARM_COMPUTE_PROF_CAT_CPU, ARM_COMPUTE_PROF_LVL_CPU, "CpuConcatenateBatchKernel::validate");
198201
ARM_COMPUTE_RETURN_ON_ERROR(validate_arguments(src, batch_offset, dst));
199202
return Status{};
200203
}
201204

202205
void CpuConcatenateBatchKernel::run_op(ITensorPack &tensors, const Window &window, const ThreadInfo &info)
203206
{
207+
ARM_COMPUTE_TRACE_EVENT(ARM_COMPUTE_PROF_CAT_CPU, ARM_COMPUTE_PROF_LVL_CPU, "CpuConcatenateBatchKernel::run_op");
204208
ARM_COMPUTE_UNUSED(info);
205209
ARM_COMPUTE_ERROR_ON_UNCONFIGURED_KERNEL(this);
206210
ARM_COMPUTE_ERROR_ON_INVALID_SUBWINDOW(ICpuKernel::window(), window);

src/cpu/kernels/CpuConcatenateDepthKernel.cpp

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright (c) 2017-2021 Arm Limited.
2+
* Copyright (c) 2017-2021, 2025 Arm Limited.
33
*
44
* SPDX-License-Identifier: MIT
55
*
@@ -31,6 +31,7 @@
3131
#include "arm_compute/core/Validate.h"
3232
#include "arm_compute/core/Window.h"
3333

34+
#include "src/common/utils/profile/acl_profile.h"
3435
#include "src/core/helpers/AutoConfiguration.h"
3536
#include "src/core/helpers/WindowHelpers.h"
3637
#include "src/core/NEON/NEAsymm.h"
@@ -160,6 +161,7 @@ Status validate_arguments(const ITensorInfo *input, unsigned int depth_offset, c
160161

161162
void CpuConcatenateDepthKernel::configure(const ITensorInfo *src, unsigned int depth_offset, ITensorInfo *dst)
162163
{
164+
ARM_COMPUTE_TRACE_EVENT(ARM_COMPUTE_PROF_CAT_CPU, ARM_COMPUTE_PROF_LVL_CPU, "CpuConcatenateDepthKernel::configure");
163165
ARM_COMPUTE_ERROR_ON_NULLPTR(src, dst);
164166
ARM_COMPUTE_ERROR_THROW_ON(validate_arguments(src, depth_offset, dst));
165167

@@ -193,12 +195,14 @@ Status CpuConcatenateDepthKernel::validate(const arm_compute::ITensorInfo *src,
193195
unsigned int depth_offset,
194196
const arm_compute::ITensorInfo *dst)
195197
{
198+
ARM_COMPUTE_TRACE_EVENT(ARM_COMPUTE_PROF_CAT_CPU, ARM_COMPUTE_PROF_LVL_CPU, "CpuConcatenateDepthKernel::validate");
196199
ARM_COMPUTE_RETURN_ON_ERROR(validate_arguments(src, depth_offset, dst));
197200
return Status{};
198201
}
199202

200203
void CpuConcatenateDepthKernel::run_op(ITensorPack &tensors, const Window &window, const ThreadInfo &info)
201204
{
205+
ARM_COMPUTE_TRACE_EVENT(ARM_COMPUTE_PROF_CAT_CPU, ARM_COMPUTE_PROF_LVL_CPU, "CpuConcatenateDepthKernel::run_op");
202206
ARM_COMPUTE_UNUSED(info);
203207
ARM_COMPUTE_ERROR_ON_UNCONFIGURED_KERNEL(this);
204208
ARM_COMPUTE_ERROR_ON_INVALID_SUBWINDOW(ICpuKernel::window(), window);

src/cpu/kernels/CpuConcatenateHeightKernel.cpp

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright (c) 2019-2021 Arm Limited.
2+
* Copyright (c) 2019-2021, 2025 Arm Limited.
33
*
44
* SPDX-License-Identifier: MIT
55
*
@@ -31,6 +31,7 @@
3131
#include "arm_compute/core/Validate.h"
3232
#include "arm_compute/core/Window.h"
3333

34+
#include "src/common/utils/profile/acl_profile.h"
3435
#include "src/core/helpers/AutoConfiguration.h"
3536
#include "src/core/helpers/WindowHelpers.h"
3637
#include "src/core/NEON/NEAsymm.h"
@@ -65,6 +66,8 @@ Status validate_arguments(const ITensorInfo *src, unsigned int height_offset, co
6566

6667
void CpuConcatenateHeightKernel::configure(const ITensorInfo *src, unsigned int height_offset, ITensorInfo *dst)
6768
{
69+
ARM_COMPUTE_TRACE_EVENT(ARM_COMPUTE_PROF_CAT_CPU, ARM_COMPUTE_PROF_LVL_CPU,
70+
"CpuConcatenateHeightKernel::configure");
6871
ARM_COMPUTE_UNUSED(src);
6972
ARM_COMPUTE_ERROR_ON_NULLPTR(src, dst);
7073
ARM_COMPUTE_ERROR_THROW_ON(validate_arguments(src, height_offset, dst));
@@ -78,12 +81,14 @@ void CpuConcatenateHeightKernel::configure(const ITensorInfo *src, unsigned int
7881

7982
Status CpuConcatenateHeightKernel::validate(const ITensorInfo *src, unsigned int height_offset, const ITensorInfo *dst)
8083
{
84+
ARM_COMPUTE_TRACE_EVENT(ARM_COMPUTE_PROF_CAT_CPU, ARM_COMPUTE_PROF_LVL_CPU, "CpuConcatenateHeightKernel::validate");
8185
ARM_COMPUTE_RETURN_ON_ERROR(validate_arguments(src, height_offset, dst));
8286
return Status{};
8387
}
8488

8589
void CpuConcatenateHeightKernel::run_op(ITensorPack &tensors, const Window &window, const ThreadInfo &info)
8690
{
91+
ARM_COMPUTE_TRACE_EVENT(ARM_COMPUTE_PROF_CAT_CPU, ARM_COMPUTE_PROF_LVL_CPU, "CpuConcatenateHeightKernel::run_op");
8792
ARM_COMPUTE_UNUSED(info);
8893
ARM_COMPUTE_ERROR_ON_UNCONFIGURED_KERNEL(this);
8994
ARM_COMPUTE_ERROR_ON_INVALID_SUBWINDOW(ICpuKernel::window(), window);

src/cpu/kernels/CpuConcatenateWidthKernel.cpp

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright (c) 2018-2021, 2023 Arm Limited.
2+
* Copyright (c) 2018-2021, 2023, 2025 Arm Limited.
33
*
44
* SPDX-License-Identifier: MIT
55
*
@@ -28,6 +28,7 @@
2828
#include "arm_compute/core/Steps.h"
2929
#include "arm_compute/core/Validate.h"
3030

31+
#include "src/common/utils/profile/acl_profile.h"
3132
#include "src/core/helpers/WindowHelpers.h"
3233
#include "src/core/NEON/NEAsymm.h"
3334

@@ -58,6 +59,7 @@ Status validate_arguments(const ITensorInfo *src, unsigned int width_offset, con
5859

5960
void CpuConcatenateWidthKernel::configure(const ITensorInfo *src, unsigned int width_offset, ITensorInfo *dst)
6061
{
62+
ARM_COMPUTE_TRACE_EVENT(ARM_COMPUTE_PROF_CAT_CPU, ARM_COMPUTE_PROF_LVL_CPU, "CpuConcatenateWidthKernel::configure");
6163
ARM_COMPUTE_ERROR_ON_NULLPTR(src, dst);
6264
ARM_COMPUTE_ERROR_THROW_ON(validate_arguments(src, width_offset, dst));
6365
ARM_COMPUTE_UNUSED(dst);
@@ -72,12 +74,14 @@ void CpuConcatenateWidthKernel::configure(const ITensorInfo *src, unsigned int w
7274

7375
Status CpuConcatenateWidthKernel::validate(const ITensorInfo *src, unsigned int width_offset, const ITensorInfo *dst)
7476
{
77+
ARM_COMPUTE_TRACE_EVENT(ARM_COMPUTE_PROF_CAT_CPU, ARM_COMPUTE_PROF_LVL_CPU, "CpuConcatenateWidthKernel::validate");
7578
ARM_COMPUTE_RETURN_ON_ERROR(validate_arguments(src, width_offset, dst));
7679
return Status{};
7780
}
7881

7982
void CpuConcatenateWidthKernel::run_op(ITensorPack &tensors, const Window &window, const ThreadInfo &info)
8083
{
84+
ARM_COMPUTE_TRACE_EVENT(ARM_COMPUTE_PROF_CAT_CPU, ARM_COMPUTE_PROF_LVL_CPU, "CpuConcatenateWidthKernel::run_op");
8185
ARM_COMPUTE_UNUSED(info);
8286
ARM_COMPUTE_ERROR_ON_UNCONFIGURED_KERNEL(this);
8387
ARM_COMPUTE_ERROR_ON_INVALID_SUBWINDOW(ICpuKernel::window(), window);

0 commit comments

Comments
 (0)