Compartir a través de


Introducción al rendimiento y los elementos básicos de la aplicación de Windows

Mejorar el rendimiento y los elementos fundamentales de la aplicación le otorga un aspecto de refinamiento y destreza y, al mismo tiempo, permite que los clientes puedan ahorrar tiempo, dinero, duración de la batería y esfuerzo de desarrollo. La aplicación consumirá menos energía, lo que mejorará la duración de la batería y reducirá las emisiones de carbono. Las aplicaciones funcionan mejor en hardware menos costoso. Aumenta la productividad de los clientes.

En esta página se proporciona información general sobre las tecnologías y las herramientas de desarrollo para medir, comprender y refinar el rendimiento de la aplicación de Windows. Si escribe una aplicación para UWP, asegúrese de consultar también la documentación de rendimiento de UWP.

¿Qué es el rendimiento de las aplicaciones y por qué es importante?

El rendimiento es la medida de la eficacia de la aplicación que usa los recursos del sistema para hacer lo que ha diseñado para hacer. Trata diferentes aspectos de cómo interactúa el programa con el dispositivo subyacente, entre los que se incluyen:

  • Uso de CPU
  • Consumo de memoria
  • Consumo de energía
  • Uso de red y almacenamiento
  • Rendimiento de la animación

Todas estas propiedades tienen un elemento de costo asociado: por ejemplo, ¿cuánta CPU usa mi aplicación? ¿Cuánto ancho de banda consumirá el usuario? ¿Con qué rapidez se carga esta página concreta de mi aplicación?

Los usuarios esperan el rendimiento como una propiedad fundamental del software que usan. Quieren que sus aplicaciones tengan capacidad de respuesta y hagan un uso eficaz de los recursos de su sistema. Las aplicaciones que presentan un rendimiento deficiente provocan frustración, lo que puede provocar una reducción de la participación del usuario. Para proporcionar a los clientes la mejor experiencia posible, por lo tanto es fundamental hacer que el rendimiento forme parte normal del flujo de trabajo de desarrollo.

¿Cuándo debe medir el rendimiento de la aplicación?

El rendimiento de la aplicación puede abarcar muchas fases del proceso de desarrollo. Tiene implicaciones en todo lo que va desde su elección de estructura de datos hasta la tecnología que elija para compilar la aplicación. Tenga en cuenta el rendimiento a medida que desarrolla la aplicación y planee realizar pruebas de rendimiento normales como parte de la actualización y el mantenimiento de la aplicación.

Cómo abordar la medición del rendimiento

Estas son algunas sugerencias sobre cómo abordar la prueba de rendimiento de la aplicación.

  • Aproveche sus conocimientos sobre la aplicación. Comprender los escenarios más comunes para los usuarios le permitirá dedicar su tiempo a optimizar las cosas correctas. Si tiene datos disponibles sobre cómo interactúan los usuarios con la aplicación, sería un buen momento para verlo.
    • ¿Dónde pasan los usuarios la mayor parte de su tiempo?
    • ¿Cuáles son las cosas más importantes que un cliente hará con su software?
    • ¿Cuáles son los requisitos de hardware de la aplicación?
  • Establezca objetivos de rendimiento para los escenarios de usuario más importantes.
  • Sea preciso sobre lo que está intentando optimizar. ¿Es CPU? ¿Batería? ¿Rendimiento de red?
  • Seleccione las herramientas que usará para realizar las mediciones.
  • Aplicar una mentalidad científica al realizar pruebas. Cree pruebas comparativas en un entorno controlado. A continuación, realice el cambio y vuelva a medir para ver cómo los cambios han afectado el comportamiento de la aplicación.
  • Agregue pruebas de regresión al entorno de prueba. Esto garantizará que las métricas de rendimiento no regresen con el tiempo.

Entrelazar métricas

Aunque normalmente se centrará en un área de rendimiento durante el análisis, tenga en cuenta que las áreas suelen estar entrelazadas. Una mejora en un área puede provocar mejoras en las otras áreas.

Por ejemplo, corregir el consumo de energía suele ser un problema de sincronización. Reducir el uso de memoria puede reducir el tiempo invertido en usar la CPU. También puede haber situaciones en las que los recursos adicionales invertidos en una área produzcan una mejora más impactante en otra área; por ejemplo, aumentar el consumo de memoria puede reducir el uso de red o almacenamiento a través del almacenamiento en caché.

La decisión de realizar un cambio depende de lo que sea más importante para los clientes.

¿Qué herramientas puedo usar para medir el rendimiento de la aplicación?

Hay una variedad de opciones diferentes disponibles para medir el rendimiento de la aplicación de Windows.

Si no está seguro de qué herramientas elegir, consulte el artículo: Elección entre el Generador de perfiles de rendimiento de Visual Studio y Windows Performance Toolkit.

Icono de Visual Studio Generador de perfiles de rendimiento de Visual Studio

Visual Studio ofrece herramientas que le ayudarán a supervisar su aplicación y a brindarle información sobre su código fuente. Consulte los recursos siguientes para obtener información sobre cómo puede usar estas herramientas para optimizar el código directamente desde el entorno de desarrollo.

Icono de Windows Performance Analyzer Windows Performance Toolkit

Windows Performance Recorder y Windows Performance Analyzer permiten la supervisión y el análisis detallados de la aplicación y de todo el sistema mediante el seguimiento de eventos para Windows (ETW). Consulte los vínculos siguientes sobre cómo empezar.

Icono de PerfView PerfView

PerfView es una herramienta de supervisión y análisis de código abierto creada por el equipo de .NET para investigar problemas de rendimiento de .NET. Debido a su capacidad para descodificar símbolos de .NET y memoria administrada, es una opción ideal para las aplicaciones administradas.

Icono de SizeBench SizeBench

SizeBench es una utilidad que le ayuda a investigar y reducir el tamaño de los archivos binarios de código nativo compilados (archivos DLL, EXE y otros archivos PE).

Recursos adicionales

Blogs y noticias

Descubra los entresijos con los blogs de desarrolladores, escritos por nuestros expertos en rendimiento para mejorar la creación de la mejor versión de tu aplicación.

Comunidad y soporte técnico

Rendimiento y sostenibilidad

La ingeniería de rendimiento forma una intersección directamente con el movimiento de software sostenible. La mayoría de las redes eléctricas queman combustibles fósiles para generar electricidad. A medida que la aplicación se ejecuta en un equipo, consume energía incremental que puede ser pequeña para un solo usuario, pero aumenta a medida que crece la base de usuarios.

¿Le interesa aprender cómo la ingeniería de rendimiento forma una intersección con la sostenibilidad? Consulte el blog Principios de ingeniería de software verde y software sostenible de Microsoft.

Nuestro mapa de ruta de contenido

El rendimiento puede ser una parte complicada del proceso de desarrollo sin las instrucciones correctas. Asegurarse de que la documentación adecuada está disponible para los desarrolladores de aplicaciones es clave para crear aplicaciones más rápidas. En el mapa de ruta siguiente se detallan las páginas siguientes que se agregarán a este conjunto de documentos y en el orden en que se publicarán. Si ve algo que le gusta o algo que falta, háganoslo saber en GitHub a través de los vínculos de comentarios de la parte inferior de esta página. Nuestro objetivo es crear un conjunto de documentos completo y educativo para el rendimiento de las aplicaciones que satisfaga sus necesidades, por lo que nos gustaría saber su opinión. No dude en enviar comentarios para esta página a continuación con sus recomendaciones sobre lo que le gustaría ver en relación con el rendimiento de la aplicación de Windows.

Tema Descripción
Introducción a las áreas de rendimiento Descripciones de lo que significa el rendimiento en el contexto de CPU, memoria, GPU, etc.
Identificación de lo que se va a medir En función de la carga de trabajo, el entorno y otros factores, ciertas áreas de rendimiento pueden ser más centradas que otras. Obtenga información sobre qué medir y cuándo con este documento
Ciclo de pruebas de rendimiento Consulte con nosotros el ciclo de vida de las pruebas de rendimiento, que incluye la configuración del entorno de prueba, el análisis de los resultados y la realización de mejoras en el producto.
Descripción de las distintas herramientas de rendimiento En este documento se presentarán más herramientas de rendimiento y se revisarán los casos de uso y los procedimientos recomendados para usarlos.
Casos prácticos Una serie de escenarios de un extremo a otro y sus recorridos a través del ciclo de pruebas de rendimiento