【发布时间】:2018-10-29 01:53:26
【问题描述】:
我在 iOS 上有一个 Metal 应用程序,我在其中获取视频帧并将每一帧传递给多个着色器,其中一些是在多个通道中应用的计算着色器,其中 4 个是独立的 MTKViews,它们显示计算的纹理(例如,直方图)带视频预览。有时(但并非总是)在 iPhone 6s 等旧硬件上,我注意到应用程序变得过于缓慢,帧速率下降到每秒 1 或 2 帧。请让我知道如何调试哪些 Metal 着色器阻塞了 GPU/GPU,以及如何优化 Metal 相关代码的性能。
【问题讨论】:
-
帧率降到1帧还是2帧的时候手机是不是感觉特别热?
-
不,不是那样的。有时帧率会在 20 秒左右后恢复正常。
-
您能否指出 Metal 的调试和分析工具列表以及任何展示如何使用它们的文章/视频?
-
查看去年 WWDC 中与 Metal 相关的视频。它们在 Apple 网站上。
-
我检查了它们,但看起来您需要查看其他视频才能完全理解它们。我找不到其他视频。
标签: ios xcode multithreading metal metalkit