optimización de la unidad Shu (primer artículo) artículos Herramientas: conocer el lugar desde el que optimizan la

Consejo: Seleccione el lado derecho del directorio, puede encontrar rápidamente lo que necesita

Esta serie de enlaces en el blog: Portal

 

En esta sección se explica cómo utilizar la herramienta de análisis de rendimiento para saber qué van optimizado.

Después de comprensión puede corresponder a CPU Optimizar, GPU u otro contenido. Cómo optimizar la CPU, GPU y la otra: Portal

 

Si los problemas de rendimiento de juego, el juego va a correr lento, Caton, pérdida de cuadros o incluso volver directa flash y así sucesivamente. En estos tiempos tenemos que utilizar herramientas de análisis de rendimiento, la herramienta de análisis del rendimiento de todos los aspectos de la prueba de rendimiento de juego principal se está ejecutando, tales como CPU, GPU, memoria y así sucesivamente. Por herramienta de análisis de rendimiento, hemos sido capaces de conseguir la clave de los problemas de rendimiento causa del juego.

herramienta de análisis de rendimiento que el artículo en cuestión son:

  • Perfil unidad
  • Xcode
  • herramientas de análisis de rendimiento tencent UPA

 

 

conceptos:

EDITORIAL introducir el concepto, fácil de entender el contenido de la siguiente explicación.

1, sincronización vertical, y lo que sucede después de que se cierra

línea de exploración horizontal es una única imagen para todos los píxeles en una pantalla que consiste en líneas de exploración horizontal en la dirección de apilamiento vertical para formar una imagen completa, ya sea entrelazado o de exploración progresiva, la pantalla tiene dos parámetros de sincronización - la sincronización horizontal y de sincronización vertical.
pantalla CRT vertical y horizontal son dos señales de sincronización básica, horizontal CRT señal de sincronización determina el tiempo para dibujar una línea en la pantalla, una señal de sincronización vertical desde la parte superior de la pantalla determina el CRT Videos en la porción de extremo, y luego volver a la posición de tiempo original, y representa el nivel de la sincronización vertical la frecuencia de actualización de la pantalla CRT.
En el proyecto de juego, si elegimos a esperar la señal de sincronización vertical que es la sincronización vertical abierta, tal vez un buen desempeño en los gráficos del juego sacarán rápidamente imágenes completan una pantalla, pero no llega a la señal de sincronización vertical, la tarjeta de vídeo no se puede sacar la siguiente pantalla, sólo la señal vertical de alcance similar, puede dibujar. FPS tan naturalmente restringido operativo valores de frecuencia de actualización.


Y si optamos por no esperar a que la señal de sincronización vertical, y luego terminar la pantalla del juego para dibujar una imagen, tarjeta de vídeo y monitor, sin tener que esperar a que la señal de sincronización vertical puede empezar a dibujar la imagen de la pantalla siguiente, la naturaleza puede aprovechar al máximo las capacidades gráficas.
Sin embargo, debido a la presencia de sincronización vertical, que hace que el progreso del juego y la tasa de actualización de la pantalla se sincroniza de manera que el cuadro es más suave y estable. Cancelar señal de sincronización vertical, por supuesto, puede volver más rápido, pero en la continuidad de la imagen debe ser descontado.

2, el mecanismo de GC

mecanismo de GC, a saber la recogida de basura. Para entender cómo funciona y cuando se dispara la recolección de basura, hay que entender primero la unidad de gestión de memoria.

La unidad utiliza principalmente mecanismo automático de gestión de memoria, que no es necesario contar en detalle cómo el código en el desarrollo de la unidad de gestión de memoria, unidad interna llevará a cabo su propia gestión de memoria.

Hay dos gestión interna piscina Unidad de memoria, memoria de pila y la memoria de pila, la basura recogida del montón se refiere principalmente a la asignación de memoria y la recuperación, el tiempo Unidad Amontonaré memoria para GC. Cuando una variable en la memoria del montón ya no está activa, la memoria ocupada y no se recuperó de inmediato, ya no está en uso GC de memoria sólo se recuperó a tiempo.

Cada ejecución de los controles de GC, GC cada variable se almacena en la memoria de pila, cada referencia variable detectará si está activo, si la variable de referencia ya no está activo, éste estará marcado como reciclable, las variables marcados serán eliminados, que ocupan memoria se recicla a la memoria del montón.

operación GC es un consumo de tiempo extremadamente variables de operación en el montón o más referencias a la operación de su funcionamiento serán más, el tiempo que sea necesario.

 

 

一, Perfil Unidad

1, la forma de abrir?

Ventanas de perfil.

Unidad perfil es el panel de la izquierda, hay muchas perfiladores, cada una de perfil muestra un aspecto de nuestra información actual del proyecto, tales como CPU, GPU, lo que hace (Rendering), RAM (memoria), sonido (audio), pantalla (Vídeo), física (Física), interfaz de usuario y la iluminación global (iluminación global) y similares.

 

2. ¿Qué optimización? optimización:

  1. persistentes problemas de rendimiento
  2. Sólo ocurrir en unos determinados problemas de rendimiento del marco

 

3, cómo leer la información?

Seleccione perfiladores de corriente (tal como CPU), la mitad inferior de la sub-grupo de los detalles del marco seleccionado se visualiza perfiladores de corriente. Podemos seleccionando los títulos de las columnas para ordenar a través del valor de la información de esta columna.

1), uso de la CPU perfilador:

Cuando se hace clic en el nombre de la función en la vista de jerarquía, el uso de CPU de perfiles de relieve la función de la información en una vista gráfica de la parte superior de la ventana de perfiles.

 

vista de jerarquía:

  • Total: tarea actual tiempo (incluyendo subtarea interna) porcentaje de consumo de tiempo de CPU consumido marco actual.
  • Auto: la propia tarea de tiempo (no incluye la sub-tareas interno) el consumo representaron la proporción de tiempo que el actual consumo de CPU marco.
  • Llama: La tarea actual número que se llama en el marco actual.
  • GC Alloc: tarea actual número de asignación de memoria y la recuperación llevada a cabo en el marco actual.
  • ms de tiempo: la tarea actual tiempo total en el marco actual que consume tiempo.
  • MS asistencia: la tarea actual mismo tiempo.

 

Ver fechas:

Línea de tiempo muestra dos cosas: CPU de orden de ejecución de tareas, por cuál de ellos es responsable de qué tareas.

Hilos permiten diferentes tareas al mismo tiempo. Cuando un subproceso para realizar una tarea, otro hilo puede realizar una tarea completamente diferente.

Unidad y representación hilo relacionadas con el proceso, hay tres: el hilo principal, haciendo que los hilos de rosca y de los trabajadores. Una vez que conocemos la eficiencia mínima de ejecución de la tarea en la que el hilo, a continuación, nos centraremos en el funcionamiento del hilo que la optimización.

 

Cuando observamos los datos, objetivos tienen que observar los siguientes puntos:

UPC:

  1. GC Permitir:  Cualquier asignación de memoria de una sola vez es mayor que 2 KB de opciones. Cada cuadro tiene la opción 20B más la asignación de memoria.
  2. ms Tiempo: prestar atención a ocupan más opciones 5ms

memoria:

  1. Textura: Comprobar si los recursos para los duplicados y memoria de gran tamaño requieren compresión ..
  2. AnimationClip: se centran en la comprobación de recursos duplicados ..
  3. Malla: centrarse en la comprobación de recursos duplicados.

 

2) Otras opciones

referencia de la CPU de entender.

 

4, determinar lo que quiere optimizar la caja []:

una, Cerca VSync sincronización vertical

sincronización vertical no es nuestro objeto optimizada, la sincronización vertical afectó al rendimiento del equipo, apáguelo para evitar interferencias. A continuación se muestra una pantalla de tan sólo la sincronización vertical,

Cerrar:

Editar-> Configuración del proyecto> Calidad, en el panel Inspector, la selección recuento V Sync no se sincronizan.

 

b, una especie observados: ms tiempo total y

[Optimización> Opciones de 5 ms]

Se puede ver, nuestros ms tiempo total y la clasificación, la cámara Render y PreLateUpdate.ParticleSystemBeginUpdateAll siempre en la parte superior.

Cámara Render es un trabajo de cámara utilización de la CPU de representación, el proyecto actual, la prestación es la causa más común de problemas de rendimiento. problemas de rendimiento optimizado causados debido a la representación es un proyecto muy grande, la optimización en esta área vamos a seguir el artículo GPU ( Portal ) explicada con detalle en. Aquí, en primer lugar hay que entender.
Optimizamos este proyecto, sin duda, renderizado, efectos de partículas, es la pérdida de rendimiento principal causa.

 

c, clasificar observó: GC

[La optimización de asignación de memoria desechable es mayor que 2 KB de opciones, opciones cada cuadro 20B que tiene la asignación de memoria anteriormente]

En nuestro análisis de rendimiento, si la representación no tenía ningún problema, a continuación, vamos a centrarnos en la observación de que es GC, es decir, el análisis de rendimiento de recolección de basura

Optimización en esta área vamos a seguir el artículo CPU ( Portal ) explicada con detalle en.

 

d, especie observó: Scripts 

Tomar en cuenta si el guión es algunos de los problemas causados ​​por la pérdida de rendimiento.

Estamos ordenados por ms tiempo, a continuación, abra la siguiente lista de elementos, que secuencia de comandos para ver qué función, lo que lleva a la pérdida de rendimiento. La siguiente figura muestra la pérdida de rendimiento es FindObjectsOfType causa RuntimeEditorApplication.Update.

 

f, al mismo tiempo, podemos centrarnos en el rendimiento físico, área de la interfaz de usuario. 

 

-------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -------------------

 

 

Dos, Xcode

1, la forma de abrir las funciones de análisis de rendimiento de Xcode

Una, la huida en Xcode tal como está empaquetado IOS de depuración cuando la Unidad

 

b, comprobar Desarrollo Construir

 

C, después del embalaje está completo, Xcode abierto

Selecionar en Xcode -> Esquema -> Administrar Esquemas

 

d, aparece la siguiente pantalla, haga doble clic en el proyecto

 

correo, haga clic en Ejecutar izquierda

 

f, derecha Opción: GPU marco de captura seleccionado OpenGL ES o metal. 

 

g, en modo de depuración para ejecutar el proyecto, cuando el proyecto está totalmente cargado en un dispositivo, se puede introducir depuración Navigator (Ver -> Navegadores - > Mostrar la depuración Navigator)

 

2, ver información de análisis de rendimiento de las aplicaciones

La siguiente es la función de captura de fotogramas GPU de interfaz específica, interfaz gráfica, se puede entender claramente la CPU, GPU, el uso de memoria en el juego se está ejecutando.

 

-------------------------------------------------- -------------------------------------------------- -------------------------------------------------- ------------------- 

 

 

Tres, UPA

UPA es la Unidad y lanzado conjuntamente Tencent, Tencent enlaces de documentos de referencia oficial: Portal

Publicados 320 artículos originales · ganado elogios 77 · vistas 170 000 +

Supongo que te gusta

Origin blog.csdn.net/weixin_38239050/article/details/104625908
Recomendado
Clasificación