¿Cómo usar la vista de rendimiento de DevTools con Flutter?

A continuación sigue la guía de uso sobre las herramientas de desarrollo para Flutter, en este caso vamos a conocer la vista de rendimiento.

Nota: La vista de rendimiento solo funciona con aplicaciones móviles. Use Chrome DevTools para analizar el rendimiento de una aplicación web.

¿Qué es la vista de rendimiento de DevTools?

La vista de rendimiento le permite grabar y perfilar una sesión desde su aplicación Dart.

Nota: Si está ejecutando una aplicación Flutter, use una compilación de perfil para analizar el rendimiento. Los perfiles de CPU no son indicativos del rendimiento de la versión a menos que su aplicación Flutter se ejecute en modo de perfil.

CPU Profiler

Comience a grabar un perfil de CPU haciendo clic en Grabar. Cuando termine de grabar, haga clic en Detener. En este punto, los datos de creación de perfiles de CPU se extraen de la máquina virtual y se muestran en las vistas del generador de perfiles (Árbol de llamadas, De abajo hacia arriba y Gráfico de llama).

Perfil de granularidad

La velocidad predeterminada a la que la VM recolecta muestras de CPU es 1 muestra / 250 μs. Esto se selecciona de forma predeterminada en la vista Rendimiento como “Granularidad de perfil: medio”. Esta tasa se puede modificar a través del selector en la parte superior de la página. Las tasas de muestreo para granularidad baja, media y alta son 1/50 μs, 1/250 μs y 1/1000 μs, respectivamente. Es importante conocer las desventajas de modificar esta configuración.

Un perfil de granularidad más alto tiene una tasa de muestreo más alta y, por lo tanto, produce un perfil de CPU de grano fino con más muestras. Esto también puede afectar el rendimiento de su aplicación, ya que la VM se interrumpe con más frecuencia para recopilar muestras. Esto también hace que el búfer de muestra de CPU de la VM se desborde más rápidamente. La máquina virtual tiene un espacio limitado donde puede almacenar información de muestra de la CPU. A una frecuencia de muestreo más alta, el espacio se llena y comienza a desbordarse antes de lo que lo haría si se utilizara una frecuencia de muestreo más baja. Esto significa que es posible que no tenga acceso a las muestras de CPU desde el comienzo del perfil grabado.

Un perfil de granularidad más bajo tiene una tasa de muestreo más baja y, por lo tanto, produce un perfil de CPU de grano grueso con menos muestras. Sin embargo, esto afecta menos el rendimiento de su aplicación. El búfer de muestra de la máquina virtual también se llena más lentamente, por lo que puede ver muestras de CPU durante un período de tiempo de ejecución de la aplicación más largo. Esto significa que tiene una mejor oportunidad de ver muestras de CPU desde el comienzo del perfil grabado.

Tabla de llamas

Esta pestaña del generador de perfiles muestra muestras de CPU para la duración registrada. Este gráfico debe verse como un seguimiento de la pila de arriba hacia abajo, donde el marco de la pila superior llama al que está debajo de él. El ancho de cada marco de pila representa la cantidad de tiempo que consumió la CPU. Los marcos de pila que consumen mucho tiempo de CPU pueden ser un buen lugar para buscar posibles mejoras de rendimiento.

Captura de pantalla de un gráfico de llamas

Árbol de llamadas

La vista de árbol de llamadas muestra el rastreo del método para el perfil de CPU. Esta tabla es una representación de arriba hacia abajo del perfil, lo que significa que se puede expandir un método para mostrar sus calles .

  • Tiempo Total

Tiempo que el método dedicó a ejecutar su propio código, así como el código de sus calles.

  • Tiempo propio

Tiempo que el método pasó ejecutando solo su propio código.

  • Método

Nombre del método llamado.

  • Fuente

Ruta del archivo para el sitio de llamada al método.

Captura de pantalla de una tabla de árbol de llamadas

De abajo hacia arriba

La vista ascendente muestra el seguimiento del método para el perfil de la CPU pero, como su nombre indica, es una representación ascendente del perfil. Esto significa que cada método de nivel superior en la tabla es en realidad el último método en la pila de llamadas para una muestra de CPU dada (en otras palabras, es el nodo hoja para la muestra).

En esta tabla, se puede expandir un método para mostrar a quienes llaman .

  • Tiempo Total

Tiempo que el método dedicó a ejecutar su propio código, así como el código de su destinatario.

  • Tiempo propio

Para los métodos de nivel superior en el árbol de abajo hacia arriba (marcos de pila de hojas en el perfil), este es el tiempo que el método pasó ejecutando solo su propio código. Para los nodos secundarios (las personas que llaman en el perfil de la CPU), este es el tiempo propio de la persona que llama cuando la llama la persona que llama. En el siguiente ejemplo, el tiempo propio de la persona Element.updateSlotForChild.visit() que llama es igual al tiempo propio de la persona [Stub] OneArgCheckInLineCache que llama cuando es llamado por la persona que llama.

  • Método

Nombre del método llamado.

  • Fuente

Ruta del archivo para el sitio de llamada al método.Captura de pantalla de una tabla de abajo hacia arriba

Guía DevTools

? ¿Qué es DevTools?? ¿Cómo instalar DevTools?? ¿Cómo usar el inspector de DevTools?? ¿Cómo usar la línea de tiempo de DevTools?? ¿Cómo usar la vista de memoria de DevTools?? ¿Cómo usar la vista de rendimiento de DevTools?

{: .btn .btn–light-outline .btn–large} ? ¿Cómo usar el depurador de DevTools? ? ¿Cómo usar la vista de registro de DevTools? ? Guía Flutter?

Relacionados

? Cursos en Español? Ejemplos de Aplicaciones⚓ Documentación en Español

Fuente: Salvo que se indique lo contrario, este trabajo está licenciado bajo una licencia internacional Creative Commons Attribution 4.0 y los ejemplos de código están licenciados bajo la licencia BSD. Creado por Flutter Oficial

Relacionado

10 Frameworks que los Desarrolladores de Software deberían Aprender 2024

Bienvenidos desarrolladores web y de software, estamos en los inicios de 2023 y es posible que muchos se esten planteado sus objetivos para lo largo del año. Con anterioridad ya he compartidos las rutas de aprendizaje para un desarrollador front-end, un desarrollador full-stack o un desarrollador back-end entre otros muchos contenidos más. En este artículo, me gustaría compartir algunos de los mejores frameworks y bibliotecas para ¡SEGUIR LEYENDO!

15 Mejores Lenguajes de Programación que Aprender

Una de las habilidades más importantes para aprender en el mundo de hoy en día, es saber programar con un lenguaje de programación. En la actualidad, las computadoras han entrado en casi todas las industrias, desde el piloto automático de un avión hasta el velocímetro digital de una bicicleta pasando por la inclusión del Internet de las cosas en los pequeños electrodomésticos. Casi todo lo que ¡SEGUIR LEYENDO!

26 Nuevos Cursos GRATIS de Udemy: Python, Javascript, Flutter (cupón finalizado)

26 Nuevos cursos con cupones free de Udemy: En español (typescript,javascript, react, vue y videojuegos) e ingles (Python, Django, Javascript, R, SQL, Flutter, Java, Qt, Bootstrap, Illustrator y Photoshop). Cursos en Español ? Curso Gratis de Udemy: Aprende JavaScript y Jquery de 0 a 100 APÚNTATE ? Curso Gratis de Udemy: Aprende Typescript de 0 a 100 APÚNTATE ? Curso Gratis de Udemy: Aprende Vue + ¡SEGUIR LEYENDO!

¿Cuáles son las mejores alternativas para PhoneGap después de su cierre?

PhoneGap fue uno de los frameworks de código abierto más populares y utilizados para el desarrollo de aplicaciones web y móviles. Los desarrolladores usaban PhoneGap para crear aplicaciones de alto rendimiento. En algún momento, incluso, Phonegap alcanzo a ser la mejor herramienta para el desarrollo de aplicaciones multiplataforma. PhoneGap Build se lanzó hace mucho tiempo y fue un servicio utilizado para crear código fuente para iOS, ¡SEGUIR LEYENDO!

Curso de Programación Apps para Dispositivos Móviles con Flutter

Con este sitio web vas a poder comenzar a iniciarte tanto en Flutter como en la creación de tu primera aplicación con Flutter y Dart. ?‍? ENTRAR AL CURSO DE FLUTTER Estos apuntes han sido creados por el profesor de formación profesional Ángel Fernandez en el Centro Rodolfo Ucha Piñeiro de Ferrol. A lo largo del sitio web, vas a poder aprender a lo largo de ¡SEGUIR LEYENDO!

Más de 1.500 Libros PDF en Inglés de Desarrollo Web, Programación, Seguridad, Robótica, Blockchain, Domótica y Mucho Más

La mejor lista de libros sobre lenguajes de programación en inglés de todo Internet. https://ciberninjas.com/zlibrary/ Libros de Python / Libros PHP / Libros Java / Libros Diseño Meta Listas atariarchives.org atariarchives.org pone a disposición en la Web libros, información y software para Atari y otras computadoras clásicas. Bento Bitsavers.org Bookboon: se requiere cookie de TI y programación</. (requiere @email) DZone - Hojas de trucos (gratis) Conceptf1.blogspot.com ¡SEGUIR LEYENDO!

Comienza a programar APPS ARM con Windows Dev Kit 2023 de Microsoft

Con Microsoft finalmente haciendo que su versión Arm Windows esté disponible con Arm en sus tablets Surface Pro 9, hay una pregunta en el aire, ¿De dónde saldrán todas las aplicaciones Arm? Microsoft ha producido una respuesta de hardware liviana, relativamente económica pero poderosa y flexible con el Windows Dev Kit 2023, anteriormente conocida como proyecto Volterra. Windows Dev Kit 2023 administra las cargas de trabajo ¡SEGUIR LEYENDO!

Deja un comentario