Desde hace tiempo venía sufriendo graves problemas de performance con Firefox Quantum, tanto en Windows como FreeBSD. No entendía cómo podía funcionar tan lento e igual de mal en sistemas operativos tan diferentes. La caída de rendimiento era tan grande que directamente no respondía al intentar cambiar de pestaña (quedaban en gris con el ícono de "cargando" girando).

Sin contar con que inutilizaba completamente el resto del sistema y toda otra aplicación corriendo. En ocasiones freezaba completamente la máquina, a causa de trashing de memoria virtual, evidenciado por una elevada actividad de disco. Este comportamiento era exactamente igual en mi estación de trabajo corriendo FreeBSD 11.1 y en el Windows 7 de mi notebook (no así en mi instalación de Devuan ASCII, la cual incluye Firefox ESR 52.9 hasta el momento, y funciona de mil maravillas).

El problema es causado por la implementación multi-proceso utilizada a partir de Firefox Quantum (versión 57). Esta implementación pasa de un modelo multi-hilado (un único proceso con múltiples hilos) a uno multi-proceso (múltiples instancias del proceso firefox).

Esta implementación multi-proceso es supuestamente (al menos así la "venden") el doble de rápida que la versión multi-hilada, pero tiene una tendencia a devorar recursos y acabar con el sistema. Especialmente cuando mantenemos muchas pestañas abiertas (en este momento tengo 23 pestañas abiertas). Particularmente en cuanto a memoria y uso de disco, tal como se observa en esta captura de atop:

En esta captura se observa un consumo aproximado de 16 GB de memoria virtual y 3 GB de memoria residente. Una animalada por más que el sistema cuente con 8 GB de RAM, ya que el uso elevado de memoria virtual es lo que termina castigando al disco rígido (el eslabón más lento de la cadena).

Algo similar ocurre en un sistema corriendo Windows 7:

Sea como sea, el sistema se torna terriblemente lento, lo cual es exasperante (dan ganas de romper todo, digamos).

Para solucionar este inconveniente, lo mejor es volver a la implementación multi-hilada, deshabilitando el uso de múltiples procesos. Para ello se debe acceder a la pestaña about:config y setear en false las siguientes opciones:

browser.tabs.remote.autostart
browser.tabs.remote.autostart.2

Deben quedar tal como se observa a continuación:

Luego reiniciar Firefox. Con esto se solucionaron todos mis problemas de rendimiento y Firefox volvió a funcionar tan bien como antes. ¿Ven por qué hay que usar software estable? Esto en Devuan ASCII y Debian Stretch no pasa...

Referencias


Tal vez pueda interesarte


Compartí este artículo