CANN/runtime API参考概述
1. 概述【免费下载链接】runtime本项目提供CANN运行时组件和维测功能组件。项目地址: https://gitcode.com/cann/runtime本章节介绍 CANN Runtime API 的基本概念、头文件与库文件说明、同步/异步接口说明及废弃接口列表。头文件和库文件说明接口分类通常接口名以acl作为前缀命名风格为acl接口类别缩写*其中*表示操作动词和对象均采用首字母大写。下文为了描述方便将本文中的接口统称为acl接口。表 1关键接口类别接口名前缀描述acl基础接口包括初始化去初始化、日志、数据类型转换等。aclrt运行时管理类的接口包括设备管理、Stream管理、内存管理、Kernel加载与执行等。aclmdlRI模型运行实例管理接口。acltdt数据传输接口。aclmdlaclop模型和算子数据Dump接口。aclprofProfiling数据采集接口。调用接口依赖的头文件和库文件说明安装固件、驱动及CANN软件包后编译、运行应用程序时才能引用到acl接口的头文件、库文件。您需要根据实际使用的acl接口来include依赖的文件各头文件的用途如下表所示。acl接口的头文件在“${INSTALL_DIR}/include/”目录下库文件在“${INSTALL_DIR}/lib64/”目录下。${INSTALL_DIR}请替换为CANN软件安装后文件存储路径。以root用户安装为例安装后文件默认存储路径为/usr/local/Ascend/cann。须知编译acl接口程序时请按照include的头文件依赖对应的库文件如果引用多余的so文件例如libascendcl.a可能导致版本功能异常或后续版本升级时存在兼容性问题。表 2头文件列表定义接口的头文件用途对应的库文件acl/acl_rt.h用于定义初始化/去初始化、Device管理、Context管理、Stream管理、同步等待、内存管理等接口。libacl_rt.so说明为了兼容旧版本旧版本中支持使用libascendcl.so但后续版本这种方式会废弃建议使用libacl_rt.so防止后续版本出现兼容性问题。acl/acl_dump.h用于定义模型和算子Dump接口。libascend_dump.soacl/acl_prof.h用于定义Profiling数据采集接口。libmsprofiler.so说明为了兼容旧版本旧版本中支持使用libascendcl.so但后续版本这种方式会废弃建议使用libmsprofiler.so防止后续版本出现兼容性问题。acl/acl_tdt.h用于定义Tensor数据传输接口。libacl_tdt_channel.soacl/acl_tdt_queue.h用于定义共享队列管理、共享Buffer管理接口。libacl_tdt_queue.so同步和异步API说明CANN支持以下几类显式同步调用此类接口后主机线程会阻塞直到相关的任务执行完成。设备同步例如aclrtSynchronizeDevice阻塞当前主机线程直到Device上所有显式或隐式创建的Stream都完成所有先前下发的任务。应该尽量少使用该函数以免拖延主机运行。流同步例如aclrtSynchronizeStream阻塞当前主机线程直到指定的Stream中完成所有下发的任务。事件同步例如aclrtSynchronizeEvent阻塞当前主机线程直到指定的Event事件完成。属于更细粒度的同步。对于异步接口主机线程调用异步接口后仅代表下发任务不代表任务执行成功在任务未完成前异步接口已向主机线程返回成功。用户需要显示调用以上同步接口阻塞主机线程等待任务完成否则可能会导致训练或推理等业务异常、Device断链掉卡等未知情况。废弃接口返回码列表接口aclGetDataBufferSize接口此接口后续版本会废弃请使用aclGetDataBufferSizeV2接口。aclrtQueryEvent接口此接口后续版本会废弃请使用aclrtQueryEventStatus接口。返回码ACL_ERROR_NONE返回码此返回码后续版本会废弃请使用ACL_SUCCESS返回码。ACL_ERROR_NOT_STATIC_AIPP此返回码后续版本会废弃请使用ACL_ERROR_GE_AIPP_NOT_EXIST返回码。ACL_ERROR_STREAM_NOT_SUBSCRIBE此返回码后续版本会废弃请使用ACL_ERROR_RT_STREAM_NO_CB_REG返回码。ACL_ERROR_THREAD_NOT_SUBSCRIBE此返回码后续版本会废弃请使用ACL_ERROR_RT_THREAD_SUBSCRIBE返回码。ACL_ERROR_WAIT_CALLBACK_TIMEOUT此返回码后续版本会废弃请使用ACL_ERROR_RT_REPORT_TIMEOUT返回码。ACL_ERROR_INVALID_DEVICE此返回码后续版本会废弃请使用ACL_ERROR_RT_INVALID_DEVICEID返回码。ACL_ERROR_GROUP_NOT_SET此返回码后续版本会废弃请使用ACL_ERROR_RT_GROUP_NOT_SET返回码。ACL_ERROR_GROUP_NOT_CREATE此返回码后续版本会废弃请使用ACL_ERROR_RT_GROUP_NOT_CREATE返回码。【免费下载链接】runtime本项目提供CANN运行时组件和维测功能组件。项目地址: https://gitcode.com/cann/runtime创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2599268.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!