metal cmd执行时间

https://developer.apple.com/library/archive/documentation/3DDrawing/Conceptual/MTLBestPracticesGuide/CommandBuffers.html#//apple_ref/doc/uid/TP40016642-CH29-SW1

他这里说cmd要尽可能少

encoder能合并的要合到一起

这样就很尴尬 到底怎么拿到一个encoder的执行时间

unity里面是一个cmd多个encoder

instrument怎么能拿到每个encoder的精确时间的 

只有能到cmd执行时间的api呀

metal的api确实不能像ogl那样用gpu time query只能用一个call back 拿cmd时间

苹果的人推荐的做法是 用他们的工具 trace下来一段看那个时间

我之前好奇的是 xcode里面那个一个个drawcall的时间到底是怎么回事 是vs +ps 的时间吗 vs不都在前面一并做的吗

xcode的人说 。。。。是vs+ps的时间   这里是每个drawcall 又画了一遍 所以才有这每个drawcall的时间 但是不太准 encoder时间相比这个会更准些 以后的版本会更准确

原文地址:https://www.cnblogs.com/minggoddess/p/10346689.html