当前位置: 首页 > news >正文

livetalking实时数字人多并发

为了支持实时数字人LiveTalking多并发时不增加模型占用显存,将模型推理由多进程模式改成了多线程,多个线程共用一份模型做推理。在用多进程时,每个进程都会在显存中拷贝一份模型,导致模型显存占用随并发数线性增长。当然用多线程也有一些弊端,因为在多线程中推理与视频压缩会抢占cpu时间片,如果模型推理速度较慢,会导致整体帧率达不到实时。如果有谁知道怎么在多进程中共用一个模型做推理,欢迎留言讨论。
以下数据都是在4090 24G显卡上测试得出。

1.wav2lip

wav2lip模型推理速度很快,用多线程基本没什么影响。占用显存在1.3G,推理速度能达到750fps。按照每路视频25fps计算,在同时说话时能支持30路。如果数字人不是同时说话,支持的路数更多,基本只受cpu视频压缩性能的限制。

2.musetalk

musetalk对显存和gpu计算性能都要求很高,占用显存12G,推理速度60fps。能够支持2路同时说话。在性能较低的显卡上用多线程可能影响较大,如果只要用一路视频,建议用多进程性能更好。只要修改musereal.py中如下代码

Thread(target=inference, args=(self.render_event,self.batch_size,self.input_latent_list_cycle,self.asr.feat_queue,self.asr.output_queue,self.res_frame_queue,self.vae, self.unet, self.pe,self.timesteps)).start()

将其中的Thread改为mp.Process

3.ernerf

ernerf对显存占用不太高,大概2G左右,这里面还包括了音频特征模型占用的的显存;对gpu计算性能要求较高,推理速度45fps。因此改成多进程比较好,因为现在ernerf模型用的比较少,这块还没实现。另外还有个优化点是不说话时用静音帧代替,不占用gpu计算性能。

http://www.xdnf.cn/news/979759.html

相关文章:

  • uni-app项目实战笔记1--创建项目和实现首页轮播图功能
  • 告别excel:AI 驱动的数据分析指南
  • elementui使用Layout布局-对齐方式
  • input+disabled/readonly问题
  • Vue3 + TypeScript + Element Plus 表格行按钮不触发 row-click 事件、不触发勾选行,只执行按钮的 click 事件
  • Explore Image Deblurring via Encoded Blur Kernel Space论文阅读
  • 时序数据库IoTDB数据模型建模实例详解
  • Jmeter中变量如何使用?
  • MySQL 三表 JOIN 执行机制深度解析
  • 基础数论一一同余定理
  • Qt 动态插件系统QMetaObject::invokeMethod
  • 【docker】docker registry搭建私有镜像仓库
  • 开源 java android app 开发(十二)封库.aar
  • SD-WAN 技术如何助力工业物联网(IIoT)数据传输?深度解析传统方案对比与应用实践
  • Chrome 优质插件计划
  • 智慧农业物联网实训中心建设方案
  • 趋境科技英特尔生态沙龙举办,打通大模型私有化“最后一公里”
  • 当简约美学融入小程序 UI 设计:开启高效交互新篇
  • 【Java学习日记38】:C语言 fabs 与 Java abs 绝对值函数
  • element plus的el-form重置无效
  • CavityPlus: 北大团队研发的综合性蛋白质结合位点检测及功能分析网络服务器
  • 【python】预测投保人医疗费用,附insurance.csv数据集
  • 嵌入式系统内核镜像相关(三)
  • React 状态管理指南:Redux 原理与优化策略
  • 避坑:启动sdk-c demo master需要注意的事情
  • 【AI】模型vs算法(以自动驾驶为例)
  • 基于React Native的HarmonyOS 5.0休闲娱乐类应用开发
  • 多分类性能评估方法
  • 企业级RAG系统架构设计与实现指南(基于Java技术栈)
  • uniapp 腾讯云 COS 访问控制实战(细粒度权限管理)