¿Cómo se produce el lag y cómo lo podemos reducir?


Si hemos estado usando bastantes addons, seguramente experimentemos algún tipo de lag, ya sea que la pantalla se paralice o nuestros bajen bastante y estén por debajo de lo normal. En esta guía os explicaremos las maneras de buscar el problema e intentar eliminarlo si es posible para que el juego funcione correctamente y sin parones.

¿Porque tenemos lag?

Para poder detectar el problema, primero tenemos que comprender que causa el lag. Mantendremos la explicación muy simple y general para que podamos entenderlo mejor:

  • La primera causa es una conexión lenta (mucho ping). Este lag se produce cuando la conexión entre nuestro ordenador y el servidor es lenta y la data tarda más de lo normal para ir al servidor y volver (normalmente se empieza a notar este tipo de lag cuando nuestro ping supere los 200 ms (Milisegundos)).
  • La segunda causa es tener los FPS (fotogramas por segundo bajo). Este lag se produce cuando el juego tarda demasiado ya sea en renderizar y/o actualizar el estado del juego por fotograma (con esta actualización no nos referimos a descargar datos nuevos, sino a la simulación).

¿Como podemos reducir el lag?

Conexión lenta

Con una conexión lenta, nosotros no podremos optimizar mucho para reducir el lag ya que no está en nuestras manos sino en la infraestructura de la red. La recomendación general es asegurarse de que nadie conectado a la red (esto incluye nuestro ordenador) esté usando más ancho de banda que lo normal (por ejemplo, descargando algo, teniendo muchos vídeos abiertos... hay muchísimas situaciones). Otro método podría ser abrir los puertos en nuestro firewall, ya que podría está bloqueando ciertas conexiones del wow, pero normalmente este no es el caso.

FPS Bajos

Como ya hemos mencionado, los fps están relacionados a la velocidad a la que se completan la actualización y el renderizado. Esto nos da dos lugares en el cual podremos buscar problemas e intentar optimizarlos para aumentar nuestros FPS o quitar esos dichosos parones que tenemos a veces.

Primero nos vamos a centrar en la actualización del estado del juego (llamado "update"). En este apartado, el juego en cada fotograma hace varias operaciones sobre el personaje (movimiento, habilidad lanzada …), pero también ejecutará todas las actualizaciones de los addons que es en donde nos vamos a centrar para reducir el tiempo del "update", ya que el resto de la actualización del juego no podremos tocarlas (si la tocamos podríamos alterar el juego y eso va en contra de las condiciones).

¿Pero cómo vamos a buscar los addons que consumen mucho tiempo de CPU (provocando así que el “update” tarde más en completar) de forma efectiva y rápida? Sabemos que desactivar y activar uno a uno consume muchísimo tiempo para encontrar el problema (ya que, por ejemplo, el parón solo ocurre en raid, por lo cual tendríamos que ir a raid y probar la pelea cada vez con un addon más activo...). Para permitirnos buscar los problemas de forma más sencilla y muchísimo más rápido usaremos un simple addon llamado AddOns CPU Usage. Este addon nos analizara el tiempo consumido por cada addon por fotograma y nos lo presenta en una bonita lista y gráfica para que podamos identificar el problema rápido.

Para usar el AddOns CPU Usage, simplemente nos metemos en el juego después de instalar y activar el addon y escribir "/cup" en el chat o darle click al botón del mini mapa (icono de una CPU) para abrir la interfaz. En la interfaz veremos muchas columnas cono diferentes nombres y un par de botones, parece complicado, pero en realidad es muy simple entender los datos y activar el analizador. Antes que nada, tenemos que encender el analizador para que empiece a guardar los tiempos, para eso debemos ir a la parte inferior derecha donde veremos un botón llamado "Start Profiler". Al apretar este botón, el juego cargará de nuevo y si volvemos a visitar la interfaz veremos que el botón cambió a "Stop Porfiler" para detener el analizador y veremos un texto verde al lado diciendo que el addon está listo para usarse. Una vez lo tengamos activo debemos ir a una estancia y entablar un combate que dure al menos dos minutos. Durante la pelea el addon recogerá mucha información acerca de los addons y nos la presentará nada más termine el combate. Pero claro, a veces nuestro lag/parón se produce fuera de una instancia, para poder analizar los addons fuera de una instancia simplemente debemos escribir el comando "/cpu realtime" y automáticamente empezara a recoger los datos, en este momento debemos ir a hacer lo que nos produce el parón y al acabar el parón volveremos a escribir el comando para dejar de recolectar información. Ya sea por el comando o por combate la lista nos presentará todos los addons activos y data asociada a ella.

En la parte de arriba tendremos información resumida del uso de los addons:

  • "Total": este es el tiempo total que han usado durante todo el proceso de analizado. Por ejemplo: hemos analizado 10 minutos de juego y esta sección nos marca 10 segundos, esto significa que los addons han tardado en total 10 segundo en actualizarse a través de los 10 minutos de juego (menos segundos es mejor).
  • "Average": este es el tiempo de media que necesito el juego para procesar toda la información de los addons en un fotograma (una ejecución del "update") (menos tiempo es mejor).
  • "Show Graphic": este botón cambia el formato de los datos de una lista a una gráfica.

En el medio tendremos la lista de addons y con su información de consumo de CPU:

  • "Addon Name": es el nombre del addon.
  • "Total time": el tiempo total en segundos que el addon ha consumido durante el test (cuanto más bajo mejor).
  • "Miliseconds": el tiempo de media en milisegundos que ha usado el addon en 1 segundo (Cuanto más bajo mejor).
  • "Porcent": el porcentaje del tiempo que ha usado el addon basado en el tiempo total que han usado todos los addons.
  • "Peak": este número representa el tiempo en milisegundos más alto que el juego tardo en actualizar/procesar información para el addon (cuanto más bajo mejor).
  • "Show Graphic": si esta checkbox esta seleccionada la data de este addon aparecerá en la gráfica.

Es aquí donde buscaremos los addons problemáticos, primero miraremos el "Average" en la parte superior de la pestaña. Si este número es superior a 1 segundo hay un gran problema con los addons que tenemos instalados. Luego, después de revisar el "Average" iremos a la lista de los addons y nos centraremos en 3 columnas "Total time", "Milliseconds" y "Peak", y buscaremos los addon que tengan el "Total Time" más alto que el resto. Cuanto más alto sea el "Total time" (y a su vez " milisegundos") significa que más tiempo usó el addon, sin embargo esto no significa directamente que es el addon que ha producido el parón, sino esto nos dice que es el addon que más tiempo necesita para actualizarse y por lo cual al desactivarlo los FPS en general seguramente suban (si el problema es de fps bajos y no de parones desactivar estos addons ayuda mucho), pero seguramente no desaparecerán los parones. Para buscar el addon que provocó un parón debemos centrarnos en la columna "Peak" y buscar el número más alto, ya que cuando más alto sea este número significa que el addon uso al menos en un "update" ese tiempo (y así produciendo el parón), una vez hayamos encontrado el addon que tiene el mayor "Peak" lo desactivamos y notaremos que el parón seguramente desaparezca.

Si vemos que los addons están todos bien, no hay "Peaks" que usen más de 1ms, el "Total Time" y "Miliseconds" están bien y no son absurdamente altos comparado con el tiempo total del análisis (por ejemplo: el "Total Time" es de 4 segundos, "Miliseconds" es de 26ms y el "Peak" es menor de 1ms podemos deducir de eso que ese addon no da lag).

Dicho todo esto de los addons que son el "update" de cada fotograma, si no vemos problemas allí debemos centrarnos en el renderizado, en este caso los gráficos, simplemente debemos bajar los gráficos y jugar con las opciones para aumentar nuestros FPS e intentar reducir parones.

Reducir los gráficos también es una buena manera de permitirnos tener más addons activos a la vez o addons que consumen mucho todo el rato, ya que, si tardamos menos tiempo en renderizar el juego, tendremos más tiempo a disposición para el "update" manteniendo los FPS actuales. Y lo mismo se aplica al revés, si reducimos el tiempo usado por el "update" (desactivando addons ...) podríamos subir los gráficos un poco ya que tenemos más tiempo disponible para renderizar manteniendo los FPS actuales. Esto puede resultar un poco confuso, pero funciona así. Por ejemplo: si el juego va a 60FPS esto significa que el "update y el renderizado de cada fotograma tarda 1/60 segundos o 16ms en completarse, por lo cual, si el "update" tarda 8ms y el renderizado otros 8ms, si reducimos el "update" a 5ms el renderizado podría tardar 11ms para completarse y aún así mantendriamos los 60FPS.

Para concluir, ordenadores de baja gama puede que necesite de por si mucho tiempo para el "update" sin addons y el renderizado, si esto pasa y ya tenemos los gráficos al mínimo y ningún addon, lo único que podemos hacer es realmente pensar en mejorar nuestro ordenador.

¿Memoria RAM afecta el rendimiento?

Hay una pequeña confusión que existe dentro del wow, la cual dice que cuanta más RAM (Random Acces Memory) use un addon más lento va a ir el juego. Esto es incorrecto en la mayoría de los casos (como podemos observar en las imagenes de abajo) , ya que esto solo significa que el addon tiene más recursos cargados, pero no tiene por qué usarlos (por ejemplo, un addon que creamos carga 500 imágenes, pero solo usa uno en el juego, la memoria RAM será de muchos Mb, pero al solo procesar una el tiempo que necesita el addon para completar su "update" puede ser incluso menor que otro que usa menos RAM). Si es cierto que cuanto más RAM usa un addon más tiempo tardamos en salir de las pantallas y en ordenadores de baja gama (donde no hay menos RAM que de la que necesitemos) sí que afecta un poco el rendimiento del juego en diferentes maneras.

Back to top