source/backend/cpu/CPUQuantizedSoftmax.hpp (24 lines of code) (raw):

// // CPUQuantizedSoftmax.hpp // MNN // // Created by MNN on 2018/09/29. // Copyright © 2018, Alibaba Group Holding Limited // #ifndef CPUQuantizedSoftmax_hpp #define CPUQuantizedSoftmax_hpp #include "core/Execution.hpp" namespace MNN { template <typename T> class CPUQuantizedSoftmax : public Execution { public: CPUQuantizedSoftmax(Backend *backend, const Op *op); virtual ~CPUQuantizedSoftmax() = default; virtual ErrorCode onResize(const std::vector<Tensor *> &inputs, const std::vector<Tensor *> &outputs) override; virtual ErrorCode onExecute(const std::vector<Tensor *> &inputs, const std::vector<Tensor *> &outputs) override; void QuantizedSoftmax(const uint8_t *inputData, const std::vector<int> &inputDims, int32_t inputBetaMultiplier, int32_t inputBetaLeftShift, uint8_t *output_data, const std::vector<int> &outputDims); private: int32_t mInputMultiplier; int mInputLeftShift; int mDiffMin; float mBeta; float mInputScale; std::vector<int> mInputDims; std::vector<int> mOutputDims; }; } // namespace MNN #endif /* CPUQuantizedSoftmax_hpp */