MLCE-1092 Add Names to Workloads

 * Added names to Workloads.
    * Workloads will be given the name of the Layer that created them.
 * Added new profiling macros to CL Neon and Ref that add the
   workload name to the event label
 * Updated workloads to use new macros.
 * Added missing profiling to Rank Workloads.
 * Fixed issue where ClConvolution2dWorkload was being reported as
   Undefined rather than GpuAcc.

Signed-off-by: Mike Kelly <mike.kelly@arm.com>
Change-Id: I0a55eab6c2f455b73943aca8e99a247c3cb2a906
diff --git a/src/backends/neon/workloads/NeonRankWorkload.hpp b/src/backends/neon/workloads/NeonRankWorkload.hpp
index 22bf7af..bd47db8 100644
--- a/src/backends/neon/workloads/NeonRankWorkload.hpp
+++ b/src/backends/neon/workloads/NeonRankWorkload.hpp
@@ -1,5 +1,5 @@
 //
-// Copyright © 2020 Arm Ltd and Contributors. All rights reserved.
+// Copyright © 2020-2023 Arm Ltd and Contributors. All rights reserved.
 // SPDX-License-Identifier: MIT
 //
 
@@ -19,6 +19,8 @@
     using NeonBaseWorkload<RankQueueDescriptor>::NeonBaseWorkload;
     virtual void Execute() const override
     {
+        ARMNN_SCOPED_PROFILING_EVENT_NEON_NAME_GUID("NeonRankWorkload_Execute");
+
         const NeonTensorHandle* neonTensorHandle = PolymorphicDowncast<const NeonTensorHandle*>(m_Data.m_Inputs[0]);
         const int32_t rank = static_cast<int32_t>(neonTensorHandle->GetShape().GetNumDimensions());