xcode - ¿Cómo perfilar el uso y el rendimiento de la memoria con Instruments?




performance profiling (2)

La memoria realmente cargada en la memoria física del dispositivo es la memoria Resident Memory en el VM Tracker Instrument .

Allocation Instrument solo marca la memoria creada por malloc/[NSObject alloc] y parte del buffer de la estructura, por ejemplo, el mapa de bits de la imagen descomprimida no se incluye en el Allocation Instrument pero siempre ocupa la mayor parte de la memoria.

Mire WWDC 2012 Session 242 iOS App Performance: Memory para obtener la información de Apple.

De todas las plantillas de seguimiento de instrumentos, me encanta usar:

  • Zombies para detectar dónde se está EXEC_BAD_ACCESS un objeto en exceso, ideal para depurar errores EXEC_BAD_ACCESS .
  • Fugas para detectar fugas de memoria.
  • Animación central w Color Blended Layers para detectar la velocidad de fotogramas y las subvistas translúcidas, ideal para suavizar el desplazamiento de UITableView .

Siempre escucho a la gente decir el perfil de uso y rendimiento de la memoria de mi aplicación.

  1. ¿Por qué debería perfil el uso y el rendimiento de la memoria? Mi aplicación funciona bien
  2. ¿Cómo lo hago?

Utilicé asignaciones y veo que mi aplicación de iPhone comienza con 1 MB de memoria total asignada y crece a 5 MB después del uso normal. ¿Cuál es la cantidad demasiado alta de uso de memoria en el iPhone? iPad? ¿Mac?


Para abordar algunos de los comentarios en la respuesta de Marcos:

Las asignaciones de bytes vivos no incluyen la memoria de textura OpenGL, que es utilizada por CALayer / UIViews. Esta es la fuente del desacuerdo con el Monitor de memoria.

Vea la respuesta a esta pregunta aquí: Comprender el consumo de memoria en iPhone





allocation