硬件:atlas500pro 310
代码如下
int32_t deviceId = 0;
aclrtContext context;
void InitResource()
{
aclError ret = aclInit();
std::cout<<"aclInit ret = "<<ret<<std::endl;
std::cout<<"aclrtSetDevice deviceId = "<<deviceId<<std::endl;
ret = aclrtSetDevice(deviceId);
std::cout<<"aclrtSetDevice ret = "<<ret<<std::endl;
ret = aclrtCreateContext(&context, deviceId);
std::cout<<"aclrtCreateContext ret = "<<ret<<std::endl;
ret = aclrtSetCurrentContext(context);
std::cout<<"aclrtSetCurrentContext ret = "<<ret<<std::endl;
}
uint32_t modelId = 0;
void LoadModel(const char* modelPath)
{
std::cout<<"modelPath = "<<modelPath<<std::endl;
size_t modelMemSize_ = 0;
size_t modelWeightSize_ = 0;
aclError ret = aclmdlQuerySize(modelPath, &modelMemSize_, &modelWeightSize_);
std::cout<<"aclmdlQuerySize ret = "<<ret<<std::endl;
std::cout<<"modelMemSize_ = "<<modelMemSize_<<std::endl;
std::cout<<"modelWeightSize_ = "<<modelWeightSize_<<std::endl;
ret = aclmdlLoadFromFile(modelPath, &modelId);
std::cout<<"aclmdlLoadFromFile ret = "<<ret<<std::endl;
std::cout<<"aclmdlLoadFromFile modelId = "<<modelId<<std::endl;
}
int main()
{
// 1.定义一个资源初始化的函数,用于AscendCL初始化、运行管理资源申请(指定计算设备)
InitResource();
// 2.定义一个模型加载的函数,加载图片分类的模型,用于后续推理使用
const char *modelPath = "../model/resnet50.om";
LoadModel(modelPath);
}
aclmdlLoadFromFile函数会返回145000的错误码
对应的错误说明是入参错误
我想问问这个入参要怎么添加?
我是完全按照文档《AscendCL应用开发(C&C++).pdf》里的快速入门一步一步搞的
我希望知道正确的传入参数应该是什么样子
硬件:atlas500pro 310
代码如下
int32_t deviceId = 0;
aclrtContext context;
void InitResource()
{
aclError ret = aclInit();
std::cout<<"aclInit ret = "<<ret<<std::endl;
std::cout<<"aclrtSetDevice deviceId = "<<deviceId<<std::endl;
ret = aclrtSetDevice(deviceId);
std::cout<<"aclrtSetDevice ret = "<<ret<<std::endl;
ret = aclrtCreateContext(&context, deviceId);
std::cout<<"aclrtCreateContext ret = "<<ret<<std::endl;
ret = aclrtSetCurrentContext(context);
std::cout<<"aclrtSetCurrentContext ret = "<<ret<<std::endl;
}
uint32_t modelId = 0;
void LoadModel(const char* modelPath)
{
std::cout<<"modelPath = "<<modelPath<<std::endl;
size_t modelMemSize_ = 0;
size_t modelWeightSize_ = 0;
aclError ret = aclmdlQuerySize(modelPath, &modelMemSize_, &modelWeightSize_);
std::cout<<"aclmdlQuerySize ret = "<<ret<<std::endl;
std::cout<<"modelMemSize_ = "<<modelMemSize_<<std::endl;
std::cout<<"modelWeightSize_ = "<<modelWeightSize_<<std::endl;
ret = aclmdlLoadFromFile(modelPath, &modelId);
std::cout<<"aclmdlLoadFromFile ret = "<<ret<<std::endl;
std::cout<<"aclmdlLoadFromFile modelId = "<<modelId<<std::endl;
}
int main()
{
// 1.定义一个资源初始化的函数,用于AscendCL初始化、运行管理资源申请(指定计算设备)
InitResource();
// 2.定义一个模型加载的函数,加载图片分类的模型,用于后续推理使用
const char *modelPath = "../model/resnet50.om";
LoadModel(modelPath);
}
aclmdlLoadFromFile函数会返回145000的错误码
对应的错误说明是入参错误
我想问问这个入参要怎么添加?
我是完全按照文档《AscendCL应用开发(C&C++).pdf》里的快速入门一步一步搞的
我希望知道正确的传入参数应该是什么样子