收起左侧

飞牛相册智能识别问题

4
回复
643
查看
[ 复制链接 ]

2

主题

1

回帖

0

牛值

江湖小虾

2026-5-12 16:30:52 显示全部楼层 阅读模式

飞牛相册智能识别问题:系统版本 1.1.3102。

系统版本:X86

设备环境:物理机

BUG现象:相册导入后,智能识别,智能识别识别几张后就报错(rpc call failed,code=20150)。

出现频率:必现

联系方式:微信群:飞牛私有云 fnOS288-徐小然

fffad36d0146fd82381b628b349584c6.png

收藏
送赞
分享

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
2026-5-13 10:36:57 显示全部楼层

感谢反馈!重新安装一遍ai模型试试,若仍出现这问题,建议将相关的日志报错提供给我们排查一下,麻烦在日志->更多->导出系统诊断日志->一键导出->勾选三个类型->确认 如果不能直接上传论坛可以通过外链分享或者是其他网盘链接分享出来。

已经重新安装了一遍ai模型,但是还是出现这个问题。 导出的日志(阿里云盘):https://www.alipan.com/s/dq4ftXast8N  详情 回复
2026-5-14 09:45

2

主题

1

回帖

0

牛值

江湖小虾

2026-5-14 09:45:31 楼主 显示全部楼层
飞牛运营同学 发表于 2026-5-13 10:36
感谢反馈!重新安装一遍ai模型试试,若仍出现这问题,建议将相关的日志报错提供给我们排查一下,麻烦在日志 ...

已经重新安装了一遍ai模型,但是还是出现这个问题。

导出的日志(阿里云盘):https://www.alipan.com/s/dq4ftXast8N

1

主题

4

回帖

0

牛值

系统先锋体验团🛩️

2026-6-29 19:12:45 显示全部楼层

rpc call failed,code=20150,同样的报错。

0

主题

4

回帖

0

牛值

江湖小虾

2026-7-9 21:25:15 显示全部楼层

我也有同样的问题,排查了一下可能是如下原因:

相册智能识别 GPU 加速模式下 img2vec 进程崩溃 (err: rpc call failed, code=20150)

设备环境

  • 硬件: N5105 (Jasper Lake, Intel UHD Graphics)
  • 系统版本: fnOS (当前最新)
  • 内存: 8GB
  • 相册版本: trim.photos v0.9.7
  • OpenVINO 版本: 2024.5.0
  • Intel GPU 驱动: intel-opencl-icd 24.31.30508.7, intel-level-zero-gpu 1.3.30508.7, intel-igc-opencl 1.0.17384.11

问题现象

开启相册 AI 设置的 GPU 加速后,智能识别(img2vec)处理若干张照片后报错:

rec error, rec image path: .../thumb/m/xx/xxx, original file: .../xxx.jpg, err: rpc call failed, code=20150

排查过程与证据

1. GPU 本身工作正常,非显存不足问题

通过 i915 debugfs 确认:

  • GEM objects: 974 个,约 974MB(两个模型同时在 GPU 上)
  • GT awake: yes
  • Reset count: 0(无 GPU hang)
  • clinfo 报告 Intel UHD Graphics 可用,OpenCL 3.0 正常
974 shrinkable [0 free] objects, 974196736 bytes
system: total:0x00000001e692b000 bytes
stolen-system: total:0x0000000003c00000 bytes
Reset count: 0
GT awake: yes

2. 手动用 Python + OpenVINO 直接调用同一模型,GPU 推理 100% 稳定

用系统自带的 OpenVINO 2024.5 Python 包直接加载 /vol1/@sysappmeta/ai-manager/models/img2vec-large-model-1.0.0/img2vec.onnx,在 GPU 上连续推理 30 批次(img2vec + face_det + face_rec 三个模型并发),全部通过,无报错,GEM 对象稳定在 894MB。

说明 OpenVINO GPU plugin 和硬件本身没有问题。

3. strace 跟踪确认:img2vec 进程内部 SIGSEGV 后自杀

安装 strace 后,用 strace -ff -p <ai_manager_pid> -e trace=kill,tgkill,write 跟踪 ai_manager 及其所有子进程。崩溃时的关键 strace 输出:

img2vec 的一个线程触发 SIGSEGV(空指针),被内部 signal handler 捕获:

--- /tmp/amstr.263819 ---
--- SIGSEGV {si_signo=SIGSEGV, si_code=SI_KERNEL, si_addr=NULL} ---
write(1, "Architecture:                   "..., 3638) = 3638
+++ exited with 0 +++

img2vec 主线程检测到异常,杀掉自己的子进程:

--- /tmp/amstr.263530 ---
kill(263531, SIGTERM)                   = 0
+++ killed by SIGTERM +++

ai_manager 收到子进程死亡的 SIGCHLD,然后 SIGTERM 杀掉整个 img2vec:

--- /tmp/amstr.263526 ---
--- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_KILLED, si_pid=263531, si_status=SIGTERM} ---
--- SIGTERM {si_signo=SIGTERM, si_code=SI_USER, si_pid=1670, si_uid=0} ---
+++ killed by SIGTERM +++

ai_manager 的线程持续对 img2vec 做 kill(pid, 0) 健康检查,确认进程存活后正常工作,说明不是 ai_manager 主动决定杀 img2vec,而是 img2vec 先自杀子进程触发了级联。

4. img2vec 确认使用 OpenVINO GPU 模式

/usr/trim/logs/ai_manager/com.trim.img2vec/stdout.log:

[2026-07-09 20:58:09] img2vec INFO: model_format:OPENVINO
[2026-07-09 20:58:09] img2vec INFO: openvino_model:.../img2vec.xml
[2026-07-09 20:58:09] img2vec INFO: device:GPU
[2026-07-09 20:58:13] img2vec INFO: HTTP RPC socket ready at unix:///run/com.trim.img2vec_internal.sock

进程崩溃时 stdout.log 无任何 traceback 输出(SIGSEGV 被内部 handler 吞掉了)。

结论

这是 img2vec 服务封装层的 bug,不是 OpenVINO 本身或硬件问题。具体表现为 OpenVINO GPU 推理在处理某些特定图片时触发了 null pointer dereference (SIGSEGV, si_addr=NULL),被进程内部 signal handler 捕获后没有输出任何错误信息,而是直接杀掉子进程导致级联退出。

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则