SCNView/SCNLayer uses significant CPU when idle

Originator:me
Number:rdar://12261773 Date Originated:08-Sep-2012 04:29 PM
Status:Closed Resolved:
Product:Mac OS X Product Version:10.8.2 (12C31a)
Classification:Power Reproducible:Always
 
08-Sep-2012 04:29 PM Jonathon Mah:
SCNView and SCNLayer use significant CPU when idling, around 3-5%. A sample shows the view or layer is repeatedly polled about whether it wants to draw, and takes a seemingly-expensive lock each time.

With an SCNLayer (or layer-backed SCNView), calling [layer setAsynchronous:NO] allows the process to go completely idle. But then when something changes in the scene, no drawing takes place until -setAsynchronous:YES is called (or redraw is triggered some other way). As a workaround I'm exploring this, using app-specific knowledge to enable and disable drawing, but SCNView internally should have enough information to do this robustly.

Comments


Please note: Reports posted here will not necessarily be seen by Apple. All problems should be submitted at bugreport.apple.com before they are posted here. Please only post information for Radars that you have filed yourself, and please do not include Apple confidential information in your posts. Thank you!