1 // 2 // Copyright © 2020 Arm Ltd and Contributors. All rights reserved. 3 // SPDX-License-Identifier: MIT 4 // 5 6 #pragma once 7 8 #include <armnn/Descriptors.hpp> 9 10 #include <arm_compute/core/Error.h> 11 #include <arm_compute/runtime/MemoryManagerOnDemand.h> 12 #include <arm_compute/runtime/CL/functions/CLSoftmaxLayer.h> 13 14 15 #include "ClBaseWorkload.hpp" 16 17 namespace armnn 18 { 19 20 arm_compute::Status ClLogSoftmaxWorkloadValidate(const TensorInfo& input, 21 const TensorInfo& output, 22 const LogSoftmaxDescriptor& descriptor); 23 24 class ClLogSoftmaxWorkload : public ClBaseWorkload<LogSoftmaxQueueDescriptor> 25 { 26 public: 27 ClLogSoftmaxWorkload(const LogSoftmaxQueueDescriptor& descriptor, const WorkloadInfo& info, 28 std::shared_ptr<arm_compute::MemoryManagerOnDemand>& memoryManager, 29 const arm_compute::CLCompileContext& clCompileContext); 30 void Execute() const override; 31 32 private: 33 mutable arm_compute::CLLogSoftmaxLayer m_LogSoftmaxLayer; 34 }; 35 36 } // namespace armnn 37