Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/101.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
iOS 12中基于SceneKit的应用程序的内存使用率明显较高_Ios_Scenekit - Fatal编程技术网

iOS 12中基于SceneKit的应用程序的内存使用率明显较高

iOS 12中基于SceneKit的应用程序的内存使用率明显较高,ios,scenekit,Ios,Scenekit,对于在iOS 12上运行的基于SceneKit的应用程序,我们发现内存使用率显著提高 要复制,请在Xcode 10中使用iOS游戏模板创建一个新项目。不要做任何改变。只需在不同的iOS设备上编译并运行它 以下是我们的发现: iPhone 6 Plus (iOS 12): 44 MB iPhone 6S Plus (iOS 11.4): 21 MB iPad Air 2: (iOS 11.4): 18 MB iPadPro (12.9): (iOS 12

对于在iOS 12上运行的基于SceneKit的应用程序,我们发现内存使用率显著提高

要复制,请在Xcode 10中使用iOS游戏模板创建一个新项目。不要做任何改变。只需在不同的iOS设备上编译并运行它

以下是我们的发现:

iPhone 6 Plus    (iOS 12):      44 MB
iPhone 6S Plus   (iOS 11.4):    21 MB
iPad Air 2:      (iOS 11.4):    18 MB
iPadPro (12.9):  (iOS 12.1):   104 MB

Note: Memory values from Xcode Debug Navigator
对于基于iOS 12的设备,预计会出现一些差异,而不是2倍。所选渲染API:默认值

是否有一个默认设置,我们可以调整以获得较低/正常的内存使用行为

更新了iPadPro编号

缺陷报告归档:#46170101

vmmap -summary  example1.memgraph  

// snippets from the 2 memorygraphs

iPadPro 12.9
---------------
Physical footprint:         100.6M
Physical footprint (peak):  168.5M

iPad Air 2
---------------
Physical footprint:         22.1M
Physical footprint (peak):  22.3M

占地面积略有变化,但大致相同(18对22.1和100对104)。

可能是一个bug,您介意用一个示例项目吗?我一直怀疑SceneKit/Metal应用程序的调试统计报告内存使用情况。几年前,我发布了一个基于SceneKit的应用程序,它占用了大量内存。我注意到,我预期消耗的内存量比报告的要少。假设它加载了40个2000x2000 Int16纹理,那么在调试统计数据中,您将看到绝对最小的320mb;很多时候,我看到的更少。这可能是因为我们现在在iOS 12中获得了正确的内存使用。