Optimizer
class Optimizer
枚举类
Device
enum Device {
CPU = 0,
GPU = 1,
OTHER = 2,
AUTO = 3
};
value | name | 说明 |
---|---|---|
0 | CPU |
中央处理器 |
1 | GPU |
图像处理器 |
2 | OTHER |
其他 |
3 | AUTO |
自定义 |
成员函数
Optimizer
构造函数
Optimizer() = default;
创建一个空Optimizer
参数:无
返回:Optimizer对象
~Optimizer
析构函数
virtual ~Optimizer() = default;
创建一个空Optimizer
参数:无
返回:Optimizer对象
create
static std::shared_ptr<Optimizer> create(Config config);
创建一个Optimizer对象
参数:
config
配置信息,包括线程、Device和MNNForwardType等信息
返回:Optimizer对象
onGetParameters
virtual std::shared_ptr<Parameters> onGetParameters(const std::vector<VARP>& outputs) {
return nullptr;
};
获取Optimizer对象的参数
参数:
outputs
Optimizer输出信息
返回:Optimizer对象的参数
onMeasure
virtual Cost onMeasure(const std::vector<VARP>& outputs, std::shared_ptr<Parameters> parameters = nullptr) = 0;
返回Cost对象信息,包括compute(计算)和memory(内存)信息,parameters必须与onGetParameters相同
参数:
outputs
Optimizer输出信息parameters
与onGetParameters相同
返回:Cost对象信息
onExecute
virtual bool onExecute(const std::vector<VARP>& outputs, std::shared_ptr<Parameters> parameters = nullptr) = 0;
修改输出信息,parameters必须与onGetParameters相同
参数:
outputs
Optimizer输出信息parameters
与onGetParameters相同
返回:是否修改输出成功
Parameters
class Parameters
成员函数
Parameters
Parameters(int n);
创建一个Parameters对象
参数:
n
成员个数
返回:Parameters对象
~Parameters
析构函数
get
float* get() const {
return mValue;
};
获取Parameters对象成员数量
参数:无
返回:Parameters对象成员数量
size
int size() const {
return mSize;
};
获取Parameters对象大小
参数:无
返回:Parameters对象大小