简介
背景信息
标准形态,即Device为EP,通过PCIe配合Host进行工作,此时Device上的CPU资源仅能通过Host调用,相关推理应用程序运行在Host,Device只为服务器提供NN计算能力。例如推理应用的自定义预处理、后处理等操作在Host侧执行,DVPP图像预处理及模型推理在Device侧执行,典型业务处理流程如图1所示。
开放形态即客户可以利用Device侧Control CPU的通用算力,降低Host侧CPU的负载。即将上图中椭圆虚线框中的处理操作转移到Device侧的Control CPU,开放Device侧昇腾AI处理器的编程能力,从而可降低对Host CPU的硬件要求,减少Host与Device之间的数据传输通信开销,提升整体处理性能。
不支持开放形态与EP标准形态相互切换使用。
例如,如果进行了开放形态的改造,后续想使用EP标准形态,需要恢复Device侧的文件系统为标准态文件系统(例如:重装对应版本的Driver包,或者把历史备份的文件系统镜像包恢复,然后重启Host)。
标准形态与开放形态对比
- 标准形态
标准形态的逻辑架构如图2所示。
标准形态下应用开发流程如下:
- 应用开发:Host调用AscendCL进行应用程序的开发,使用GCC进行Host侧应用程序的编译。
- 应用部署:在Host侧启动应用程序。
- 信息采集(可选):在Host侧使用IDE启动Profiling任务,采集日志与Profiling信息。
- 开放形态
图3 开放形态逻辑架构
开放形态下的应用开发流程如下:
- 定制Device侧文件系统镜像,主要包含将Runtime放置到文件系统,另外版本提供了驱动源码包,用户可自行定制驱动并进行驱动的源码编译。
- 应用开发:对于Device侧应用程序,需要使用HCC(Huawei Compiler Collection:华为编译器)进行编译;对于Host侧应用程序,需要使用GCC进行编译。
- 应用调试:将开发好的Device应用手工拷贝到Device进行调试。
- 应用程序合入镜像:将调试好的Device应用合入镜像,重新打包文件系统。
- 信息采集(可选):采集日志与Profiling等相关信息。