MNN 获取out tensor 时,iOS 程序闪退

zlwx9yxi  于 2021-12-26  发布在  Java
关注(0)|答案(2)|浏览(485)

模型运行完成后,去取output tensor时闪退。代码执行到onCopyDeviceToHost 的函数的memcpy语句时程序闪退,只有“Message from debugger: Terminated due to memory issue”信息 。
本地debug发现,memcpy的三个入参均有效,而且如果缩小第三个参数数值时,函数则能正常执行。对于这种场景如何进行定位呢?

5t7ly7z5

5t7ly7z51#

可以尝试开启Diagnostics下的Address Sanitizer。

g6ll5ycj

g6ll5ycj2#

@li-qing 按照提示,修改配置后重新clean build,依然没有更多的相关信息,之前忘了说了,在模型运行过程中会出现“2019-10-21 09:14:39.284812+0800 playground[5151:351178] [Common] _BSMachError: port 8323; (os/kern) invalid capability (0x14) "Unable to insert COPY_SEND"” 类似的打印,在网上没有找到太多有效的信息。从现象看就是数据能从gpu拷贝到device buffer 是ok,但是再从device buffer拷贝到cpu内存时出错。

相关问题