我编写了一个显示一定数量图形的Direct2D应用程序。
当我运行此应用程序时,在我的笔记本上显示700,000个图形元素需要大约4秒钟:
Intel Core i7 CPU Q 720 1.6 GHz
NVIDIA Quadro FX 880M
Direct2D是使用Direct3D 10.1构建的用户模式库 API。这意味着Direct2D应用程序将从中受益 现代主流GPU上的硬件加速渲染。
我期望相同的应用程序(没有任何修改)应该在具有更好规格的不同机器上表现更好。所以我在台式电脑上试了一下:
Intel Xeon(R) CPU 2.27 GHz
NVIDIA GeForce GTX 960
但显示相同的图形(相同数量和类型的元素)需要5秒钟(1秒钟以上)。
我想知道它是如何可能的,原因是什么。
答案 0 :(得分:2)
没有测量就不可能肯定地说。但是,我的直觉告诉我melak47是正确的。不乏GPU加速,缺乏带宽。集成GPU可以访问与CPU相同的内存。他们可以跳过必须通过总线将位图和绘图命令传输到GPU的专用图形内存的步骤。
主要是2D工作负载,任何GPU都将花费大部分时间等待内存。在您的情况下,集成GPU具有优势。我怀疑你感觉到的是额外的第二个,是你的GeForce等待主板总线上的图形。
但是,你可以profile并启发我们。
答案 1 :(得分:0)
评论和其他回复中的一些好处。(暂时无法添加评论)
您的结果不会让我感到惊讶,因为您的2个设置之间存在一些差异。
让我们看一下:http://ark.intel.com/fr/compare/47640,43122
遗憾的是,我们无法看到您的Xeon CPU支持的SSE版本。这些通常用于代码优化。我选择的模型是比较好的模型吗?
Core-I7中没有集成的GPU,但4核+超线程= 8个线程,2个核心,Xeon没有超线程。
当谈到实时渲染时,Quadro会摇滚。由于你的场景看起来很简单,它可以很好地优化,但只是"也许" - 我猜这里......有经验评论的人可以吗? : - )
所以它并不那么简单。什么似乎是一个更好的gfx卡并不意味着更好的性能肯定。如果你在其他地方遇到瓶颈,你就搞砸了!
差别很小,您必须比较2个设置中的每个元素:CPU,RAM,HDD,GPU,主板与PCI-e和芯片组的类型。
所以再次猜测,需要进行一些测试:)
玩得开心,祝你好运; - )