1. 问题现象
执行基于DSP X86仿真的OE包自自定义算子示例/open_explorer/samples/ucp_tutorial/vp/vp_samples/script_x86/01_basic_processing/run_basic_processing.sh失败,错误截图如下


2. 运行环境说明
测试必须在DOCKER中进行
DSP编译测试环境以及license配置信息
- 系统环境配置~/.bashrc信息如下:

- 配置完成后xt-run执行Ok,说明配置没有问题。
- Dsp license配置文件/data/common/dsp/license/license.dat的内容如下(安全原因LICENCE部分ID信息用……代替):
- docker中的mac地址信息如下(可以看出MAC地址和LICENSE中的HOSTID是一致的):

3. 问题原因
该报错是因为客户环境缺少 XT_ISS_TURBO License所致。该 License 用于仿真加速,但因为地平线并未买断,所以无法直接提供给客户,如客户需要,则需自行向 Cadence 购买。因公司内部拥有 XT_ISS_TURBO,故研发阶段未感知到问题,但客户缺少 XT_ISS_TURBO License就会触发运行报错。
4. 修复方法
目前公司已买断并在签署释放合同后可提供给客户的 License 包括:XT_ISS_BASE_EDC90FD4、XT_XCC_FUSA_EDC90FD4、XT_XPLORER_SE 三个。其中,XT_ISS_BASE_EDC90FD4 也是仿真相关 License,目前可用于示例的仿真测试(但相比 XT_ISS_TURBO 会慢很多)。
目前,需求已向内部提出,计划将示例全部替换成基于 XT_ISS_BASE_EDC90FD4 实现。
对于DSP自定义算子开发的用户,客户如需临时使用,可替换附件压缩包中的两个静态库至 ucp_tutorial/deps_x86/ucp/plugin/dsp_plugin/hobot/lib/,并重新编译 dsp_sample。
5. 遗留问题
因为自定义算子部分DSP端是以源发方式提供并由用户自己编译构建的,可以使用本帖提供的补丁重新编译后解决仿真问题;但如VP等HP示例的仿真,因为OE包中没有提供源码仅提供DSP端代码编译后的结果供使用,故用户无法应用新的补丁进行编译,所以该部分的仿真功能仍有问题,需要等新的版本发布。
6. 其他补充
在板端运行DSP示例如遇下列报错,可通过更新板端系统版本解决。

目前已对地平线释放的930标准底软版本进行了测试,未发现问题,示例运行正常,如下图:

