4

Монитор активности (a.k.a. Memory Monitor) - единственный инструмент в Xcode Instruments, который может измерять общее использование ОЗУ приложения iPhone в Симуляторе? Только эта строка показывает мгновенную проводную оперативную память?Xcode Instruments: пиковая RAM приложений iPhone, работающих в Simulator?

И насколько точным является то, что в сравнении с оборудованием iPhone, особенно учитывая, что OSX подкачки i/o для VM?

Я вижу 7-8MB проводные цифры RAM только для стандартных шаблонов проектов Xcode iPhone (кроме OpenGL), скомпилированных и работающих. В то же время Object Allocations хорошо отображается под 1 МБ для всех объектов.

ответ

7

Нет, есть намного лучший способ сделать это.

Перейдите в меню «Выполнить» и выберите Run with Performance Tool, затем Object Allocations.

Это запустит Инструменты и покажет использование ОЗУ. Это также полезно для обнаружения утечек памяти, если вы выберете Leaks вместо Object Allocations.

1

Я согласен с тем, что Simulator - это просто «API-симулятор», поведение, которое вы видите, будет по крайней мере несколько зависеть от того, как OS X управляет памятью. И ограничения, очевидно, различны, например, вы можете превысить 128 МБ оперативной памяти или даже 256 МБ, что, очевидно, невозможно на любом текущем iPhone или iPod Touch (по крайней мере, на момент написания ...).

Я по-прежнему считал это полезным в OpenGL, чтобы убедиться, что текстуры и другие элементы правильно освобождены, но помимо этого это всего лишь приблизительная рекомендация.

Однако, если вы хотите увидеть использование памяти на устройстве, достаточно простое решение. Просто настройте устройство в Xcode и перейдите в меню «Выполнить»> «Выполнить с помощью Performance Tool> Object Allocations», затем сборка будет отправлена ​​на устройство, а инструмент «Ассигнования объектов» появится рядом с Xcode и отобразится на использование памяти устройства.