【发布时间】:2015-11-18 17:29:00
【问题描述】:
与桌面同等版本相比,我们应用的 UWP 版本运行的帧速率(6 fps 对 24 fps)要慢得多。请注意,这两个版本都在相同硬件上进行了测试。
两个版本都是使用 SharpDX 构建的,唯一的区别是 RenderTargets 的设置方式。 Windows 应用使用HwndRenderTarget,UWP 应用使用SurfaceImageSource 画笔绘制到Rectangle。
我们已将罪魁祸首(至少在 CPU 方面)缩小到FillGeometry,这在 UWP 上消耗了大量时间。
与桌面相比,FillGeometry 在上述 UWP 配置中花费更长的时间有什么原因吗?
注意:两者的渲染代码相同,因此请避免对两种实现产生同等影响的建议,例如使用GeometryRealization 而不是Geometry。我们正在寻找 UWP 和桌面渲染性能差异的原因。
如果几何以外的其他因素可能会影响性能,那么了解这些因素也会很有用,因为我们的分析工具可能并不完全精确。
【问题讨论】:
-
我确信台式电脑的显卡比手机好得多。更好的显卡意味着更好的显卡
-
在使用和不使用 .NET Native(在 VS 中构建 DEBUG/RELEASE)时,是否会发生此性能问题?它们具有不同的互操作和编译器堆栈,因此可能有助于跟踪这一点。
-
Ken - 两个版本都在同一台机器上运行。马特 - 两者都是调试版本。 .Net native 有问题(它永远不会完成),所以目前无法使用。
标签: performance desktop uwp direct2d sharpdx