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