ArmNN
 21.05
RefConvolution2dWorkload.hpp
Go to the documentation of this file.
1 //
2 // Copyright © 2017 Arm Ltd. All rights reserved.
3 // SPDX-License-Identifier: MIT
4 //
5 
6 #pragma once
7 
10 #include "Decoders.hpp"
11 #include "Encoders.hpp"
12 
13 namespace armnn
14 {
15 
16 class RefConvolution2dWorkload : public BaseWorkload<Convolution2dQueueDescriptor>
17 {
18 public:
19  explicit RefConvolution2dWorkload(const Convolution2dQueueDescriptor& descriptor,
20  const WorkloadInfo& info);
21 
22 
23  void Execute() const override;
24  void ExecuteAsync(WorkingMemDescriptor& workingMemDescriptor) override;
25 
26 private:
27  void Execute(std::vector<ITensorHandle*> inputs, std::vector<ITensorHandle*> outputs) const;
28  std::unique_ptr<ScopedTensorHandle> m_Weight;
29  std::unique_ptr<ScopedTensorHandle> m_Bias;
30 
31  std::unique_ptr<Decoder<float>> m_FilterDecoder;
32  std::unique_ptr<Decoder<float>> m_BiasDecoder;
33 
34  TensorShape m_FilterShape;
35 };
36 
37 } //namespace armnn
38 
Copyright (c) 2021 ARM Limited and Contributors.
RefConvolution2dWorkload(const Convolution2dQueueDescriptor &descriptor, const WorkloadInfo &info)
Contains information about inputs and outputs to a layer.
void ExecuteAsync(WorkingMemDescriptor &workingMemDescriptor) override