#3782 关于显存和内存不足的问题?!

114.88* Posted at: 1 hour ago 👁4

用了好几天软件,成功处理了几十个英语原声视频配中文双语字幕。中间出错无数也看了之前的建议,我有个非常大的疑问,请教开发者:
我一般的工作是10个视频一个文件夹一起处理,每个视频不超过30分钟的英语原文,然后不需要配音,只是用faster-whisper的large-v3-turbo模型翻译,然后合并生成带中英双语字幕的最终视频。
我机器128G内存,满血的4090 24G显卡,然后并行处理2 GPU并行1,大模型flote 16 等等,应该已经降低了内存显存消耗。然后每次运行要么重启电脑,要么清空缓存。可是为什么每次处理基本都有4-5个,也就是40%-50%的视频出错,显示“语音识别阶段出错 [faster-whisper(本地)] 出错了,可能内存或显存不足 [GPU0]
Traceback (most recent call last):
File "videotrans\configure\_base.py", line 281, in _new_process
File "videotrans\process\signelobj.py", line 80, in submit_task_gpu
File "concurrent\futures\process.py", line 720, in submit”

然后监控cuda和GPU,也都从来没用用满过,所以还有什么改进的方法么?

1 Replies

这是由于软件在处理多个视频时,GPU任务调度或显存管理可能存在问题,导致部分任务因资源竞争而失败。虽然您的硬件配置很高,但软件内部的多任务并行机制可能在特定条件下不稳定。

解决方案:

  1. 强制串行处理:在菜单栏选择 工具/选项 -> 高级选项,找到【通用设置】部分,勾选 批量翻译时强制串行。这将确保软件按顺序处理每个视频,避免并行任务间的资源冲突。
  2. 调整GPU任务数:在同一【通用设置】部分,将 GPU同时任务数[重启生效] 设置为 1,并确保 多显卡模式[重启生效] 未勾选。保存设置后,重启软件使其生效。
  3. 优化CUDA数据类型:在【语音识别参数】部分,确认 CUDA数据类型 已设置为 float16 以降低显存占用。
  4. 降低识别精度参数:在【语音识别参数】部分,将 识别准确度beam_size识别准确度best_of 均设置为 1,这能显著减少显存消耗,且对大型模型(如 large-v3-turbo)的精度影响相对较小。
  5. 关闭上下文感知:在【语音识别参数】部分,确保 启用上下文感知 选项未勾选,这可以减少GPU占用。
  6. 处理前清理缓存:每次开始新的批量任务前,在主界面左上角勾选 清理已生成,确保不会使用旧的缓存文件。
  7. 尝试使用 large-v3 模型large-v3-turbo 模型在某些情况下可能不如标准的 large-v3 稳定。您可以尝试切换回 large-v3 模型进行对比测试。

请查阅相关文档:

Post Your Reply
Open source and free maintenance is not easy. If this project is helpful to you, please consider making a small donation to help the project continue to maintain and update.

Related resource