[BUG] 在闲置后重新装入的型号在NVIDIA Vulkan (coopmat)上取出~70s- > 30s后复制出的时间
□ 错误描述
在有NVIDIA GPU(Vulkan)的Linux上,每个 ** 型号在闲置卸下后重载** 在CPU上需要~70s(一个单线接上100%),它吹出应用的30s的转录超时. 结果是,汉地闲置了模式-unload-timeout'之后的第一份抄录本未能完成,因为30多小时等待实时抄录完成'或`模式没有装入抄录本'。
应用程序启动后的第一个负载是快(~1s). 只有卸下后重新装入才缓慢. 一旦模型被装入(8–13x实时),推论本身就快了.
这是NVIDIA特有的:在Intel iGPU(无coopmat)上,同样的重载是~1s. 它与ggml探测“KHR coopmat”矩阵核心有关。
□ 环境
- OS:Ubuntu 24.04 LTS,X11
- 硬件:混合GPU — Intel UHD (TGL GT1) iGPU + NVIDIA RTX A4000 笔记本电脑 (8GB),驱动程序595.71.05
- ** Handy**:0.9.4(deb),
trancis accessator:gpu',trancisa gpu device: 1'(NVIDIA) - ** 模型**:`手动计算机/parakeet统一在0.6b-gguf/parakeet统一在0.6b-Q8 0.gguf'
- Stack: trancis.cpp / ggml-vulkan (libggml-vulkan.so from/usr/lib/Handy),协作器启用(`母核:KHR coopmat')
□ 步骤重现
- 将 " 模型-卸载-超时 " 设定为短值(如 " sec15 " )并强制GPU设备为NVIDIA GPU( " trancis gpu device: 1 " )。
- 开始新鲜汉地. 触发一个转录(Ctrl+Space). 第一种型号载荷:QQ1s**.
- 等待闲置卸货(~15s).
- 再次触发抄录。
** 注意:** 重新装入需要 ~70–76s**。 30年代的抄录超时火灾先发,故抄录失败.
在一个新工艺中连续地跨多个周期重复(装入17:35:47 →装入17:37:03 = 76;重复为~72s,~73s,~75s).
□ 根源证据
- 在缓慢再装入时,一个单汉地线程以100%的CPU旋转而GPU闲置(0% util). 慢步完全在 " trancis model load file " (CPU-side slower/管线建设)内.
- 速度缓慢是由于**合作-母体(coopmat)**路径:ggml-vulkan在NVIDIA设备上报告`母体核:KHR coopmat',并重新装入模型重建了coopmat管道集. 这只发生在NVIDIA上.
- 使用相同的
/usr/lib/Handy/libtransit.so.0 ' 、相同的型号、相同的设备,打开'-transit-transitis run'-转录'-close ' 循环在`0.4s**,即使启用了coopmat——因此,快/慢的差别与应用程序如何泪下/再造发动机有关(见下文有关问题)。 - 在Intel iGPU(无coopmat)上,应用程序的重载为~1s.
□活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活
为 Handy 进程设置 `GGML VK DIS COOPMAT=1' 使相同的重载QQ1s**(在它开始的同一秒内装入),对这个模型的推想速度没有可衡量的影响(在2s 片段上每跑86ms对100ms——两者都远超实时).
□ 相关问题
与 # 1775 ("ggml- vulkan" 设备上下文在模型卸下并降解系统后持续存在)密切相关 . . . . . . .
内容来源: cjpais/Handy