文档
注册

ModelLoadOptV2

功能

支持多种推理模型输入方式,用户可通过该数据结构,选择其中一种方式输入推理模型。

请根据实际情况选择对应配置,如配置与实际输入存在差异,会在Model处抛出异常,如未对该异常进行catch操作,则程序会发生core dumped

结构定义

struct ModelLoadOptV2 {
    enum ModelLoadType {
        LOAD_MODEL_FROM_FILE = 1,
        LOAD_MODEL_FROM_FILE_WITH_MEM,
        LOAD_MODEL_FROM_MEM,
        LOAD_MODEL_FROM_MEM_WITH_MEM
    };
    enum ModelType {
        MODEL_TYPE_OM = 0,
        MODEL_TYPE_MINDIR
    };
    ModelType modelType = MODEL_TYPE_OM;
    ModelLoadType loadType = LOAD_MODEL_FROM_FILE;
    std::string modelPath = "";
    void* modelPtr = nullptr;
    void* modelWorkPtr = nullptr;
    void* modelWeightPtr = nullptr;
    size_t modelSize = 0;
    size_t workSize = 0;
    size_t weightSize = 0;
};

参数说明

参数名

输入/输出

说明

modelType

输入

推理模型类型,支持情况参见如下。默认为“MODEL_TYPE_OM”

  • MODEL_TYPE_OM
  • MODEL_TYPE_MINDIR(对于MindIR模型,仅支持静态Shape和动态Batch。)

loadType

输入

推理模型输入类型,可通过以下参数选定输入方式。默认为“LOAD_MODEL_FROM_FILE”

  • LOAD_MODEL_FROM_FILE:从文件加载离线模型数据,由系统内部管理内存。
  • LOAD_MODEL_FROM_FILE_WITH_MEM:从文件加载离线模型数据,由用户自行管理模型运行的内存(包括工作内存和权值内存,工作内存用于模型执行过程中的临时数据,权值内存用于存放权值数据)。
  • LOAD_MODEL_FROM_MEM:从内存加载离线模型数据,由系统内部管理内存。
  • LOAD_MODEL_FROM_MEM_WITH_MEM:从内存加载离线模型数据,由用户自行管理模型运行的内存(包括工作内存和权值内存)。
  • “modelType”“MODEL_TYPE_MINDIR”时,仅支持“LOAD_MODEL_FROM_FILE”“LOAD_MODEL_FROM_MEM”两种输入类型。

modelPath

输入

推理模型文件路径,仅在以下模式生效。默认为"",最大只支持至4GB大小的模型且建议模型属主为当前用户,模型文件的权限小于或等于“640”

  • LOAD_MODEL_FROM_FILE
  • LOAD_MODEL_FROM_FILE_WITH_MEM

modelPtr

输入

推理模型所在内存地址指针,仅在以下模式生效。默认为nullptr,用户需根据实际情况输入内存地址。

  • LOAD_MODEL_FROM_MEM
  • LOAD_MODEL_FROM_MEM_WITH_MEM

modelWorkPtr

输入

推理模型所在工作内存地址指针,仅在以下模式生效。默认为nullptr,表示由系统管理内存。

  • LOAD_MODEL_FROM_FILE_WITH_MEM
  • LOAD_MODEL_FROM_MEM_WITH_MEM

modelWeightPtr

输入

推理模型权值内存地址指针,仅在以下模式生效。默认为nullptr,表示由系统管理内存。

  • LOAD_MODEL_FROM_FILE_WITH_MEM
  • LOAD_MODEL_FROM_MEM_WITH_MEM

modelSize

输入

推理模型数据长度,单位Byte,仅在以下模式生效。默认为“0”,最大只支持至4GB大小的模型。

  • LOAD_MODEL_FROM_MEM
  • LOAD_MODEL_FROM_MEM_WITH_MEM

workSize

输入

推理模型所在工作内存大小,单位Byte。默认为“0”,当“modelWorkPtr”为nullptr时该选项无效。

weightSize

输入

推理模型权值内存大小,单位Byte。默认为“0”,当“modelWeightPtr”为nullptr时该选项无效。

搜索结果
找到“0”个结果

当前产品无相关内容

未找到相关内容,请尝试其他搜索词