我们通过我们的一个应用程序在客户端机器上渲染 16 个实时流,视频流的分辨率为 4CIF/MPEG4/25FPS/4000Kbits。
客户端机器的配置如下。
HP 台式机:
Microsoft Windows XP Intel (R) Core2 Duo CPU E8400 @ 3.00 GHz 2.99 GHz,1.94 GB RAM Intel (R) Q45/Q43 系列 Express 芯片组(内置)
当有 16 个流时,机器的 CPU 使用率峰值达到 99%。
经过讨论,我们决定安装外置显卡以减少 CPU 的使用率。
因此,我们尝试了以下显卡。
- NVIDIA Quadro NVS 440 - 128 MB
- Radeon HD 4350 - 512 MB GDDR2
- Redeon HD 4350 - 1GB DDR2
- 华硕 EAH 4350 静音 1GB DDR2
但从性能方面来看并没有什么差别——甚至性能有所下降。
那么,这些外置显卡的用途是什么呢?
真的可以降低 CPU 占用率吗?如果想降低 CPU 占用率,需要检查哪些参数?
答案1
显卡的共同目的是产生立即可见的图形,无论是渲染 3D 游戏、生成可视化图形用户界面,还是最近解码在监视器上观看的视频。
如果你是编码16 个数据流被发送到其他机器,并由这些机器呈现到屏幕上,这与您现有的显卡的预期使用方式不同,但是,使用一些额外的软件,并不超出它们的能力。
一块不错的显卡,加上一些额外编写的软件,可以比 CPU 更快地编码视频,但编码软件必须编写才能利用 GPU,否则不会发生任何特殊情况。
看http://www.nvidia.co.uk/object/IO_62559_uk.html例如 Adobe Premiere
威力导演将使用显卡为您编码视频
简而言之,您不能只是插入显卡并期望您的软件开始使用它,您首先需要使用真正了解 GPU 加速编码的软件。
您使用什么软件包将视频从源头传输到端点?
-=编辑=-
附注一下,您列出的所有显卡都是非常低端的廉价显卡,处理能力非常有限,虽然 4350 中的两块配备了 1GB 的 RAM,但老实说,这种容量的 RAM 在如今的显卡上非常常见,几乎就像在说“我的电脑有处理器”一样。
这些显卡可能能够播放全高清视频,并可能在效果调低(甚至关闭)的情况下播放几个 3D 游戏,但不要指望在任何游戏或视频编码方面有任何突破性的性能提升,这些 4350 真的是物美价廉的显卡系列。
答案2
我有一台双处理器电脑,使用 64 位微软操作系统。我购买了 radeon hd6670 显卡,希望能够观看 1080p 的电影,但 CPU 使用率却高达 98+。阅读了您的有趣文章后,我想知道应该使用什么软件来让我的服务器电脑(xeon intel 2 单核处理器)分担工作负载?
答案3
你有一个低端 CPU,正在尝试执行繁重的计算工作。它已经超负荷了,所以你添加了一个低端 GPU,你想知道为什么系统不能执行繁重的计算工作。好吧,这是一个低端系统。
如果您运行的应用程序支持 GPU 计算,那么添加高端 GPU 将带来巨大的变化。如果不支持,添加 GPU 则毫无意义。GPU 只能自动加速图形,而不是计算。
最有可能的最佳解决方案是升级 CPU。例如,Q9450 大约可以使您的 CPU 计算能力提高三倍。