Recientemente comencé a observar este comportamiento muy confuso y molesto, por no decir un comportamiento preocupante al abrir Firefox y luego iniciar Chromium:
Durante aproximadamente 30 segundos, los procesos secundarios de Firefox consumirían todos los recursos de CPU disponibles, lo que provocaría que los sitios web detuvieran el procesamiento (las páginas ya mostradas se congelan, las páginas nuevas muestran una página blanca con un círculo giratorio gris) mientras la ventana general sigue respondiendo (menús, desplazamiento de página , cambiar de pestaña, incluso páginas internas como about: config o about: preferencias funcionan ...). El cromo en sí no muestra ningún síntoma. Terminar Chromium nuevamente de inmediato, mientras Firefox está girando, no detiene el comportamiento más rápido.
Lo mismo sucede con mi perfil normal de Firefox, un nuevo perfil de Firefox intacto sin complementos, etc., Firefox comenzó en modo seguro con complementos deshabilitados, y Firefox comenzó en modo privado. Similar a Chromium, puedo iniciarlo con mi perfil normal, en modo incógnito o con un perfil temporal, generando siempre los mismos resultados.
No pasa nada extraño cuando Chromium se está ejecutando y abro Firefox.
Al iniciar Firefox desde un terminal, a veces recibo mensajes como estos cuando lo cierro mientras está girando (tenga en cuenta la línea de error de la tubería que menciona algunos ipc de cromo ...):
ExceptionHandler::GenerateDump cloned child 32165
ExceptionHandler::SendContinueSignalToChild sent continue signal to child
ExceptionHandler::WaitForContinueSignal waiting for continue signal...
[Parent 26520, Gecko_IOThread] WARNING: pipe error (52): Connection reset by peer: file /build/firefox-8oo9jx/firefox-62.0+build2/ipc/chromium/src/chrome/common/ipc_channel_posix.cc, line 353
ExceptionHandler::GenerateDump cloned child 32274
ExceptionHandler::WaitForContinueSignal waiting for continue signal...
ExceptionHandler::SendContinueSignalToChild sent continue signal to child
Curiosamente, no pude reproducir ese comportamiento en una cuenta de invitado o una cuenta regular (admin) recién creada.
Algunas especificaciones del sistema (actualizadas):
- Ubuntu 16.04 (64 bits)
- Firefox
62.0 + build2-0ubuntu0.16.04.563.0 + build2-0ubuntu0.16.04.2 - Cromo
69.0.3497.81-0ubuntu0.16.04.170.0.3538.77-0ubuntu0.16.04.1 fontconfig
2.11.94-0ubuntu1.1- Hardware de gráficos: gráficos integrados Intel SkyLake (i5-6200U) + Nvidia GeForce 940M
Actualmente tengo elnvidia-410
controlador instalado, pero cambié al perfil Intel Prime. ¿Cómo puedo solucionar y solucionar este problema?
Hice un perfil de rendimiento con Gecko Profiler Extension, instalado en un perfil limpio y nuevo de Firefox en mi cuenta habitual de Ubuntu. Se puede encontrar aquí: https://perfht.ml/2zpTWsh : el marco de tiempo que no responde con un uso del 100% de la CPU debe corresponder aproximadamente al área resaltada en las líneas de tiempo de Content Proc, de aproximadamente 18 a 56 s.
Creé un informe de errores de Mozilla para este problema: https://bugzilla.mozilla.org/show_bug.cgi?id=1504461
Actualización importante: Aparentemente, mi informe de error fue un duplicado de https://bugzilla.mozilla.org/show_bug.cgi?id=1495900 , que señala fontconfig
como el culpable. Parece que iniciar Chromium está haciendo un cambio en la configuración de la fuente de alguna manera, lo que desencadena una recarga completa en Firefox. Esto se ajusta al informe de perfil de rendimiento y también se alinea con la forma en que las actualizaciones anteriores de los paquetes de fuentes han desencadenado el mismo tipo de congelación.
¿Alguna idea de cómo puedo hacer que los tres (Firefox, Chromium, fontconfig) se comporten bien el uno con el otro?
fuente
Respuestas:
TL; DR: es un problema
fontconfig
anterior a la versión 2.13. Se puede solucionar actualizando el paquete a 2.13 o superior (aunque no pude encontrar un proveedor adecuado). Alternativamente, examine todas sus carpetas y archivos de configuración relacionados con las fuentes en su directorio de inicio y pruebe si eliminar cualquiera de ellos resuelve su problema. Para mí, renombrar~/.fonts
hizo el truco.Después de conocer los informes de errores https://bugzilla.mozilla.org/show_bug.cgi?id=1495900 y https://bugzilla.mozilla.org/show_bug.cgi?id=1411338 queda bastante claro que el problema debe ser causado por
fontconfig
.De alguna manera, cuando se inicia Chromium, se activa un cambio en la base de datos de fuentes (???), lo que hace que Firefox, si se está ejecutando actualmente, vuelva a escanear el sistema de archivos en busca de fuentes de alguna manera, lo que resulta en el uso de la CPU y la congelación temporal.
Aparentemente, actualizar el
fontconfig
paquete de la versión 2.11 a 2.13 (la versión incluida, por ejemplo, en Ubuntu 18.10) debería solucionar el problema, pero no encontré una manera fácil de obtener esa versión en 16.04, sin romper las dependencias de muchos otros paquetes que he instalado.Entonces, como el problema se limita a mi cuenta de usuario, examiné la configuración de fuente local y las carpetas de mi usuario. Hay una gran lío de diferentes directorios de fuentes relacionadas para ser honesto, incluyendo
~/.fonts
,~/.local/share/fonts
,~/.local/share-font-manager
,~/.config/font-manager
,~/.cache/font-manager
,~/.cache/fontconfig
y algunos archivos de configuración y otras cosas más de la fuente específica de la aplicación.Comencé eliminando (renombrando) la
~/.fonts
carpeta, ya que de todos modos no parecía contener nada útil, y un simpletouch ~/.fonts/Library/
antes provocó el mal comportamiento de Firefox. Después de que esa carpeta desapareció, también lo fue el problema al iniciar Chromium. \ o /fuente
~/.fonts
directorio. Todas las fuentes están en un directorio de todo el sistema.fontconfig
a2.13.0-5ubuntu3
partir hicieron cósmica / 18.10 resolver el problema AFAICT. Este fue el error más extraño en mucho tiempo ... gracias por los consejos.libfontconfig1
específicamente. En general, agregué los espejos biónicos aapt
la lista y apliqué el anclaje apto para evitar instalar cualquiera de sus paquetes sin contarlo específicamente. Después, simplemente utilicéapt
's-t
opción de este modo:apt install fontconfig -tcosmic
. Estoy usando mate como DE ... tal vez no funcione tan fácilmente con otros DE.Antecedentes
Se ha propuesto este error de Firefox 1492360: alto uso de CPU cuando se abre Firefox antes de Chrome / Chrome . Es un duplicado del error 1495900: el inicio de Chrome hace que los procesos de contenido de Firefox se bloqueen durante aproximadamente dos minutos, debido al escaneo de fuentes FontConfig (FcInitReinitialize) , es el culpable.
Pero también estoy en Firefox:
Y cuando abro Chrome:
No veo ningún impacto en el rendimiento de las CPU.
Puede estar en contra de su moral, pero tal vez pueda intentar instalar
google-chrome-stable
como yo. Luego haz la prueba nuevamente. Si no hay un pico de uso de la CPU al 100%, se podría presentar un informe de error entre Chromium y Chrome.Estoy en Ubuntu 16.04.5 LTS. Aunque el núcleo es actualmente la
4.14.78
cadena LTS, no creo que tenga nada que ver con eso, ya que tampoco noté golpes de CPU en núcleos anteriores.La única vez que veo todas las CPU al 100% es durante
update-initramfs
.fontconfig
versonEn el informe de error se revela:
En mi versión sin errores (aunque podría deberse a que no hay fuentes locales):
Estoy en una
2.11.94
versión anterior a la versión de informe de errores2.12
. En el informe de errores, la actualización2.13
es una solución recomendada, pero OP mencionada en los comentarios no es posible. Como tal,2.11.94
podría ser una opción.fuente
fontconfig
ahora. Probablemente tenga diferentes (o no) fuentes locales instaladas en su cuenta de usuario. Encontré una solución alternativa para eliminar (cambiar el nombre) de la~/.fonts
carpeta, lo que soluciona el problema. Aparentemente, también actualizar afontconfig
> = versión 2.13 debería solucionarlo, pero no puedo hacerlo en 16.04.ttf
usan y se usan en procesadores de texto / hojas de cálculo. Desafortunadamente, tuviste que resolver tu propia pregunta de recompensa, pero si te sirve de consuelo, me ha sucedido lo mismo en el pasado.fontconfig
como una opción para que coincida con mi versión, pero esa es una "leve esperanza" dado que puede haber venido de allí. Si tiene un enlace para instalar fuentes locales, lo intentaré para confirmar / negar el efecto de unafontconfig
versión anterior .fontconfig
es2.11.94-0ubuntu1.1
también, esa no está libre de errores. Supongo que debe ser una combinación de las fuentes instaladas, la configuración de fuente personalizada y la magia negra. Mira mi respuesta. :)A juzgar por el registro, parece que Firefox está utilizando IPC síncrono (comunicación entre procesos) por alguna razón. Hay indicadores en Firefox para activar explícitamente el IPC síncrono (por ejemplo: network.cookie.ipc.sync). Uno de esos podría estar habilitado. Puede acceder a estos desde la página about: config
El retraso sería el resultado de que Firefox esperara la respuesta. Como no hay carga cuando Chromium ha terminado de iniciarse o no se está ejecutando activamente, hay una respuesta inmediata.
Relacionado: https://bugzilla.mozilla.org/show_bug.cgi?id=1331680
fuente
network.cookie.ipc.sync
configuración de falso a verdadero y viceversa, reiniciando Firefox después de cada cambio, pero aún así el mismo comportamiento :( Todavía no entiendo por qué Firefox y Chromium incluso se comunicarían en primer lugar, deberían preocuparse por sí mismos negocios cada uno.No sé si la siguiente sugerencia funcionará o no. Puedes intentarlo. Intente eliminar el cromo y Firefox por completo (mantenga los archivos .deb, por supuesto) con Synaptic Package Manager. Después de eso, verifique si hay dependencias rotas. Solucionarlos utilizando sináptica (si existe). Ahora verifique el uso de la CPU (uso Powertop). Finalmente, vuelva a instalar los navegadores.
Nota: Estas cosas son generalmente lo que hago en caso de anormalidades específicas. Recuerdo enfrentar un problema ligeramente similar hace un año. Se resolvió de esta manera.
fuente
En Ubuntu 16.04, eliminar la carpeta vacía lo
~/.local/share/fonts
resolvió en mi caso.fuente