【发布时间】:2014-07-09 18:29:57
【问题描述】:
我正在编写一个实时显示多个 FFT 图的应用程序。我一直在使用视图进行绘图,但这开始真正消耗我的 CPU 能力,因为 UIViews 在 CPU 上绘制它们的内容。我正在寻找一种绘制 FFT 图的解决方案,它将操作从 ipad 的 CPU 转移到 GPU。
到目前为止,我想到的解决方案似乎要么尝试使用 CALayers 并使图中的每个数据点(其中 512 个)成为单独的层,要么尝试使用 OpenGL 来绘制我的图,这是 wayyyyyy超出我的深度....我知道这是一个模糊的问题,但我希望这里的某个人能够更聪明地了解如何在 GPU 上绘制我的 FFT 图并释放一些处理器能力。
【问题讨论】:
-
您是否对此进行了测量以验证绘图是受限因素,而不是例如 FFT 计算?您从现有解决方案中获得了什么性能?您目前如何绘制图表?您是否需要渲染所有 512 个数据点(即视图至少有 512 个点宽)?您如何(以及多久)触发重绘?
-
如果您还没有进行测量。 “Core Animation”、“Time Profiler”以及可能还有“CPU Monitor”的组合可能是了解当前情况的良好开端。
标签: ios uiview opengl-es core-animation fft