Command buffer failure

What is the current state-of-the-art for diagnosing Metal command buffer failure? We've got a case that *only* happens on iPhoneX.


Querying the error results, all we get are the undocumented


"Execution of the command buffer was aborted due to an error during execution. Discarded (victim of GPU error/recovery) (IOAF code 5)"


Which isn't very actionable.


Cheers - j

Interestingly,


I've found if I've got a completion handler, and if I have a breakpoint on the presence of MTLCommandBuffer.error, I can do a GPU frame capture while stopped at the breakpoint.


Useful.


Unfortunately, absolutlely nothing is tagged in the capture as problematic.

Command buffer failure
 
 
Q