MindSpore接口mindspore::api
Context
#include <context.h>
Context类用于保存执行中的环境变量。
静态公有成员函数
Instance
static Context &Instance();
获取MindSpore Context实例对象。
公有成员函数
GetDeviceTarget
const std::string &GetDeviceTarget() const;
获取当前目标Device类型。
• 返回值
当前DeviceTarget的类型。
GetDeviceID
uint32_t GetDeviceID() const;
获取当前Device ID。
• 返回值
当前Device ID。
SetDeviceTarget
Context &SetDeviceTarget(const std::string &device_target);
配置目标Device。
• 参数
o device_target: 将要配置的目标Device,可选有kDeviceTypeAscend310、kDeviceTypeAscend910。
• 返回值
该MindSpore Context实例对象。
SetDeviceID
Context &SetDeviceID(uint32_t device_id);
获取当前Device ID。
• 参数
o device_id: 将要配置的Device ID。
• 返回值
该MindSpore Context实例对象。
Serialization
#include <serialization.h>
Serialization类汇总了模型文件读写的方法。
静态公有成员函数
LoadModel
• 参数
o file: 模型文件路径。
o model_type:模型文件类型,可选有ModelType::kMindIR、ModelType::kOM。
• 返回值
保存图数据的对象。
Model
#include <model.h>
Model定义了MindSpore中的模型,便于计算图管理。
构造函数和析构函数
Model(const GraphCell &graph);
~Model();
GraphCell是Cell的一个派生,Cell目前没有开放使用。GraphCell可以由Graph构造,如Model model(GraphCell(graph))。
公有成员函数
Build
Status Build(const std::map<std::string, std::string> &options);
将模型编译至可在Device上运行的状态。
• 参数
o options: 模型编译选项,key为选项名,value为对应选项,支持的options有:
Key Value
kModelOptionInsertOpCfgPath AIPP配置文件路径

kModelOptionInputFormat 手动指定模型输入format,可选有"NCHW",“NHWC"等
kModelOptionInputShape 手动指定模型输入shape,如"input_op_name1: n1,c2,h3,w4;input_op_name2: n4,c3,h2,w1”
kModelOptionOutputType 手动指定模型输出type,如"FP16",“UINT8"等,默认为"FP32”
kModelOptionPrecisionMode 模型精度模式,可选有"force_fp16",“allow_fp32_to_fp16”,“must_keep_origin_dtype"或者"allow_mix_precision”,默认为"force_fp16"
kModelOptionOpSelectImplMode 算子选择模式,可选有"high_performance"和"high_precision",默认为"high_performance"
• 返回值
状态码。
Predict
Status Predict(const std::vector &inputs, std::vector *outputs);
推理模型。
• 参数
o inputs: 模型输入按顺序排列的vector。
o outputs: 输出参数,按顺序排列的vector的指针,模型输出会按顺序填入该容器。
• 返回值
状态码。
GetInputsInfo
Status GetInputsInfo(std::vectorstd::string *names, std::vector<std::vector<int64_t>> *shapes, std::vector *data_types, std::vector<size_t> *mem_sizes) const;
获取模型输入信息。
• 参数
o names: 可选输出参数,模型输入按顺序排列的vector的指针,模型输入的name会按顺序填入该容器,传入nullptr则表示不获取该属性。
o shapes: 可选输出参数,模型输入按顺序排列的vector的指针,模型输入的shape会按顺序填入该容器,传入nullptr则表示不获取该属性。
o data_types: 可选输出参数,模型输入按顺序排列的vector的指针,模型输入的数据类型会按顺序填入该容器,传入nullptr则表示不获取该属性。
o mem_sizes: 可选输出参数,模型输入按顺序排列的vector的指针,模型输入的以字节为单位的内存长度会按顺序填入该容器,传入nullptr则表示不获取该属性。
• 返回值
状态码。
GetOutputsInfo
Status GetOutputsInfo(std::vectorstd::string *names, std::vector<std::vector<int64_t>> *shapes, std::vector *data_types, std::vector<size_t> *mem_sizes) const;
获取模型输出信息。
• 参数
o names: 可选输出参数,模型输出按顺序排列的vector的指针,模型输出的name会按顺序填入该容器,传入nullptr则表示不获取该属性。
o shapes: 可选输出参数,模型输出按顺序排列的vector的指针,模型输出的shape会按顺序填入该容器,传入nullptr则表示不获取该属性。
o data_types: 可选输出参数,模型输出按顺序排列的vector的指针,模型输出的数据类型会按顺序填入该容器,传入nullptr则表示不获取该属性。
o mem_sizes: 可选输出参数,模型输出按顺序排列的vector的指针,模型输出的以字节为单位的内存长度会按顺序填入该容器,传入nullptr则表示不获取该属性。
• 返回值
状态码。
Tensor
#include <types.h>
构造函数和析构函数
Tensor();
Tensor(const std::string &name, DataType type, const std::vector<int64_t> &shape, const void *data, size_t data_len);
~Tensor();
静态公有成员函数
GetTypeSize
static int GetTypeSize(api::DataType type);
获取数据类型的内存长度,以字节为单位。
• 参数
o type: 数据类型。
• 返回值
内存长度,单位是字节。
公有成员函数
Name
const std::string &Name() const;
获取Tensor的名字。
• 返回值
Tensor的名字。
DataType
api::DataType DataType() const;
获取Tensor的数据类型。
• 返回值
Tensor的数据类型。
Shape
const std::vector<int64_t> &Shape() const;
获取Tensor的Shape。
• 返回值
Tensor的Shape。
SetName
void SetName(const std::string &name);
设置Tensor的名字。
• 参数
o name: 将要设置的name。
SetDataType
void SetDataType(api::DataType type);
设置Tensor的数据类型。
• 参数
o type: 将要设置的type。
SetShape
void SetShape(const std::vector<int64_t> &shape);
设置Tensor的Shape。
• 参数
o shape: 将要设置的shape。
Data
const void *Data() const;
获取Tensor中的数据的const指针。
• 返回值
指向Tensor中的数据的const指针。
MutableData
void *MutableData();
获取Tensor中的数据的指针。
• 返回值
指向Tensor中的数据的指针。
DataSize
size_t DataSize() const;
获取Tensor中的数据的以字节为单位的内存长度。
• 返回值
Tensor中的数据的以字节为单位的内存长度。
ResizeData
bool ResizeData(size_t data_len);
重新调整Tensor的内存大小。
• 参数
o data_len: 调整后的内存字节数。
• 返回值
bool值表示是否成功。
SetData
bool SetData(const void *data, size_t data_len);
重新调整Tensor的内存数据。
• 参数
o data: 源数据内存地址。
o data_len: 源数据内存长度。
• 返回值
bool值表示是否成功。
ElementNum
int64_t ElementNum() const;
获取Tensor中元素的个数。
• 返回值
Tensor中的元素个数
Clone
Tensor Clone() const;
拷贝一份自身的副本。
• 返回值
深拷贝的副本。

MindSpore接口mindspore::api相关推荐

  1. 【mindspore】mindspore实现手写数字识别

    mindspore实现手写数字识别 具体流程参考教程:MindSpore快速入门 MindSpore 接口文档 注:本文章记录的是我在开发过程中的学习笔记,仅供参考学习,欢迎讨论,但不作为开发教程使用 ...

  2. MindSpore张量mindspore::tensor

    MindSpore张量mindspore::tensor MSTensor #include <ms_tensor.h> MSTensor定义了MindSpore Lite中的张量. 构造 ...

  3. MindSpore数据集mindspore::dataset

    MindSpore数据集mindspore::dataset ResizeBilinear #include <image_process.h> bool ResizeBilinear(L ...

  4. 转载-- http接口、api接口、RPC接口、RMI、webservice、Restful等概念

    http接口.api接口.RPC接口.RMI.webservice.Restful等概念 收藏 Linux一叶 https://my.oschina.net/heavenly/blog/499661 ...

  5. Linux系统调用及用户编程接口(API)学习

    Linux系统调用 系统调用指操作系统提供给用户程序调用的一组"特殊"接口,用户程序可以通过这组"特殊"接口来获得操作系统内核提供的服务. 为什么用户程序不能直 ...

  6. mysql标准化存储结构_Atitit.自定义存储引擎的接口设计 api 标准化 attilax 总结  mysql...

    Atitit.自定义存储引擎的接口设计api标准化attilax总结mysql 1.图16.1:MySQL体系结构 存储引擎负责管理数据存储,以及MySQL的索引管理.通过定义的API,MySQL服务 ...

  7. 丁香园开源接口管理系统 - API Mocker

    API Mocker 先贴上项目地址:DXY-F2E/api-mocker 随着web发展,前后端分离的演进,网页的交互变的越来越复杂.在项目开发过程中,前后端并行开发时,在涉及到接口的部分,总是遇到 ...

  8. Python从无到有搭建接口(API)自动化测试框架

    目录 1.前言 2.思路 3.正文 一.路径模块-initPath.py 二.配置文件模块-getConfig.py 三.读取用例模块-getCase.py 四.数据库操作模块-operatorDB. ...

  9. CocosCreator新手教程——cc.Node基础常用接口(API)

    CocosCreator开发笔记--cc.Node基础常用接口(API) 一.常用属性 cc.Class({extends: cc.Component,properties: {sprite: {de ...

最新文章

  1. 档案用虚拟化服务器还是物理机,利用虚拟化将一台NAS满足不同部门
  2. python列表索引 end start_python学习--list列表操作
  3. oracle 直接读取文件,oracle直接读取文本文件数据
  4. docker挂载的目录无法读写
  5. 试验设计茆诗松电子版_非标机械设计有哪些设计过程?
  6. codeforce gym 100548H The Problem to Make You Happy
  7. Dubbo服务端暴露全流程
  8. annotation-driven里面的argument-resolvers参数??
  9. densepose的IUV图像I通道数字与身体部分对应关系
  10. 要打理好自己的钱袋子
  11. HTML实现直播礼物特效,抖音哪些礼物可以触发特效,抖音直播礼物特效大全
  12. win10开启Linux蓝屏,win10启动蓝屏_Win10怎么开启蓝屏记录
  13. 微机原理笔记day01 计算机发展史,和计算机组成部分
  14. 2022 Google 谷歌开发者大会亮点抢先看
  15. NVIDIA TITAN XP 显卡直通(Pass-through)求助
  16. 关于数学建模的个人见解(实验室专用)
  17. 【ReID】ABD-Net: Attentive but Diverse Person Re-Identification
  18. Tor 在 linux上使用
  19. 班章管家:为什么出资会亏钱?在出资中“勤勉”并不管用
  20. 计算机打字教程ppt,计算机打字基础教学.ppt

热门文章

  1. IDEA自动生成类注解,IDEA作者信息自动生成,IDEA类信息自动生成
  2. 第五周周记(国庆第五天)
  3. ISOOSI网络模型的通俗解析
  4. 字符串编辑距离(Edit Distance)
  5. LeetCode简单题之密钥格式化
  6. 硬件专业化和软件映射的敏捷框架
  7. 什么阻碍了人工智能在制造业的应用?
  8. 深度学习-智能视频监控
  9. [JavaScript] JavaScript数组挖掘,不只是讲数组哟(2)
  10. android 创建 file 文件,文本 并写入内容