SceneKit "wait drawable" on iPhone only

I have an AR app built with ARSCNView. The scene's pretty complex and it works very well until I notice that dragging some contents in the AR scene is not smooth. So I start profiling the app on different devices. The result is very confusing. First, on my iPad Pro (A10X), the app works really great and it takes less than 2ms for each frame. But on my iPhone XS Max (A12), almost all frames will have a long "waiting drawable" time, and each frame will take up the full 16ms. The NSRunLoop thread will be blocked until the drawable is available. As they're running the same code, so I guess it's not a problem in my code. Does anyone have any idea on why it's different for different devices or better, a way to work around it? Thanks!

Replies

Hello manyoo,


This will be fairly difficult to diagnose on the forum, and the source of your performance issue is likely going to be specific to you, for those reasons, I recommend that you open a DTS tech support incident about this. If you do file an incident, you should attach a SceneKit + Metal Instruments trace, as well as a GPU frame capture trace to the incident.

Did you find a solution to your problem? I have the exact same issue.