应用程序在模拟器和设备之间的内存使用差异

use*_*902 7 memory iphone xcode simulator ios

我在我的Macbook Air上运行我的应用程序和我的Iphone 6s,下面的图像是我浏览应用程序中的所有UI后的内存使用情况.在这两个场景中,我执行了类似的任务和持续时间.为什么模拟器的内存使用量比实际设备高得多.即使设备内存使用情况似乎合理,我是否应该担心?

在此输入图像描述

use*_*143 8

好问题.感谢您提出这样的问题.

Apple文档说

模拟器是一个有用的工具,但它不应该是您测试应用程序的唯一方法.由于模拟器是在Mac上运行的应用程序,因此它可以访问计算机的资源,包括CPU,内存和网络连接.所有这些资源都可能比移动设备上的资源更快.因此,模拟器不能准确测试应用程序的性能,内存使用情况和网络速度.出于同样的原因,请始终在设备上测试应用程序用户界面的性能.在模拟器中,您的应用程序的用户界面可能看起来比在设备上运行更快,更顺畅

Xcode的iOS模拟器为iPhone 6S报告2GB RAM,为iPad Pro报告4GB

Xcode的iOS模拟器显示2GB内存适用于iPhone 6s和6s Plus,4GB适用于iPad Pro

最后讨论的解决方案是

为什么iPhone模拟器很棒

我从jbat100的答案中找到了确切的解决方案.

在Simulator中渲染OpenGL ES的性能与OpenGL ES在实际设备上的性能无关.Simulator提供优化的软件光栅化器,利用Macintosh计算机的矢量处理功能.因此,您的OpenGL ES代码可能在iOS模拟器中运行得更快或更慢(取决于您的计算机和您正在绘制的内容),而不是在实际设备上运行.始终在真实设备上分析和优化您的绘图代码,并且永远不要假设模拟器反映了真实世界的性能.

Iphone Simulator - 与设备相比,分配的内存太多,运行速度慢