Verifique el uso de la CPU por pestaña o por complemento en firefox en mac [duplicado]

13

Mi versión de Firefox tiene un proceso / hilo desbocado que hace que use 100% de CPU en mi MacBook Pro (OSX 10.7.4) después de unos minutos. He intentado usar about:memoryy about:addons-memorytratar de averiguar qué está causando el problema, pero no parece estar relacionado con el uso de la memoria. ¿Hay alguna forma de ver el uso de CPU por pestaña o complemento?

claire
fuente

Respuestas:

6

En realidad, la about:memorypestaña muestra la asignación de memoria por pestaña; es un poco difícil de asimilar.

Cuando vaya a about:memory, debería ver una lista de asignaciones de memoria ordenadas jerárquicamente. El primer elemento de nivel superior en la lista debe ser Asignaciones explícitas . Debajo hay varios nodos de hoja. El que estás buscando son objetos de ventana . Debajo de eso, la mayoría de los nodos etiquetados como "superior" se refieren a pestañas (si carga un sitio web, verá la dirección al lado de "superior"). Por ejemplo, veo:

├───29.63 MB (15.27%) -- window-objects
│   ├──12.64 MB (06.52%) ++ top(chrome://browser/content/browser.xul, id=3)
│   ├───6.84 MB (03.53%) ++ top(http://www.cnn.com/, id=31)
│   ├───4.55 MB (02.35%) ++ top(https://ftp.mozilla.org/, id=24)
│   ├───3.50 MB (01.80%) ++ (5 tiny)

Los números en el frente son el uso de memoria, también se da como un porcentaje del uso general de memoria de Firefox.

También se muestra el uso de memoria adicional, pero no de manera explícita al agregar. Tendría que buscar a través de la lista para descubrirlo encontrando todos los componentes que pertenecen a un complemento y sumando las asignaciones de memoria.

Tenga en cuenta que estoy en el canal Beta (por lo que actualmente utilizo Firefox 22.0b2) pero creo que esto funciona en versiones anteriores.

Puerto interior
fuente
gracias, aunque no noté ninguna pérdida de memoria. parece que la memoria tiende a mantenerse bastante constante. Es solo que después de un tiempo, la CPU se dispara y se mantiene así.
Claire
11
La pregunta era específicamente sobre el uso de la CPU , no la memoria.
laggingreflex
@laggingreflex: Sí, lo sé. Estaba respondiendo a la declaración "pero no parece estar relacionado con el uso de memoria en absoluto". Sin embargo, mirando hacia atrás, tal vez Claire en realidad significaba "CPU" en lugar de "memoria".
InnerPortal
Con Firefox 38 (que se ejecuta en Linux), tuve que hacer clic Measuredebajo Show Memory Reportspara generar y ver el árbol que describe. (Si este es el mismo en todas las plataformas, que podría hacer que la respuesta un poco más completa.)
joeytwiddle
5

Hay varias razones para el alto uso de CPU en Firefox, que se detallan a continuación.

1.Add-ons

La causa habitual de los problemas de la CPU es un mal complemento. La primera prueba que se debe hacer es iniciar Firefox sin complementos.

Desde Solucionar problemas de Firefox con el Modo seguro :

En la parte superior de la ventana de Firefox, haga clic en el botón de Firefox, vaya al menú Ayuda y seleccione Restart with Add-ons Disabled.... Firefox se iniciará con el cuadro de diálogo Modo seguro de Firefox. Nota: También puede iniciar Firefox en modo seguro manteniendo presionada la tecla Mayús mientras inicia Firefox.

Ahora tiene dos opciones:

Al hacer clic en el botón Iniciar en modo seguro, se deshabilitarán temporalmente las extensiones y los temas, se desactivará la aceleración de hardware y se restablecerá la barra de herramientas y las personalizaciones de los botones. Cuando abandonas el Modo a prueba de fallos e inicias Firefox normalmente, tus extensiones, temas y configuraciones volverán al estado en que estaban antes de ingresar al Modo a prueba de errores.

Si en modo seguro no tiene problemas de CPU, entonces el problema es con uno de sus complementos. Puede usar el menú Tools > Add-onspara deshabilitar selectivamente los complementos y reiniciar Firefox hasta que encuentre el malo.

2.Flash

Flash es conocido por tales problemas. Una de las formas habituales de solucionarlo es deshabilitar la aceleración de hardware de Firefox mediante el menú Tools > Options, pestaña Avanzado, para desmarcar Use Hardware Acceleration When Available.

Se recomiendan los dos complementos Adblock Plus y NoScript para bloquear selectivamente elementos innecesarios, incluido Flash, en la página que está viendo.

3.JavaScript

El JavaScript en el sitio web que está viendo en una de sus pestañas puede estar mal codificado y desperdiciar la CPU al hacer un bucle.

El mejor remedio es usar NoScript para evitar ejecutar JavaScript desde sitios web en los que no confía. Esta es también una medida de seguridad que cualquiera debería usar para evitar exploits de scripts entre sitios .

4.perfil

Si no está muy claro qué sitio web está causando la CPU alta, se puede usar la creación de perfiles en Firefox, aunque este no es un ejercicio simple.

Los depuradores que también hacen perfiles son:

Si eres un desarrollador y te sientes como una aventura, y dado que estás en la Mac, puedes usar DTrace como se explica en Rendimiento / Optimización de JavaScript con DTrace , que es la herramienta que usan los desarrolladores de Mozilla.

harrymc
fuente
3

@claire: Actualmente no hay una forma 'fácil' de ver lo que quieres. Si sigue el camino de harrymc, encontrará información sobre el origen del problema, pero tal vez no esté seguro.

Si desea ir por el camino 'difícil', eso le mostrará qué está consumiendo su CPU dentro de Firefox y / o sus complementos, debe comenzar a depurar su Firefox en su entorno (a veces no es solo Firefox y / o el complemento en sí, pero una biblioteca corrupta en la que confían). Aquí hay una explicación completa sobre cómo hacerlo, si tiene alguna idea sobre la programación. XCode se puede descargar gratis desde apple:

https://developer.mozilla.org/en-US/docs/Debugging_on_Mac_OS_X

Pero no necesita depurar el código completo de Mozilla, pero encontrará el punto que está en correlación con el aumento del uso de la CPU. Eso puede decirle exactamente de dónde viene el problema (tales mal bucles, etc.).

Jimmy Koerting
fuente
1

Si por alguna razón tu Firefox está consumiendo y consumiendo todo el uso de tu CPU, entonces puedes intentar limitar el no. de procesadores y la prioridad que la CPU le dará a ese proceso para reducir el uso de la CPU.

Para hacer esto, haga clic en ( Ctrl+ Alt+ Del) para abrir el Administrador de tareas y luego haga clic en la pestaña de proceso (la que muestra todo el proceso con su extensión (básicamente, ya que está en Windows, todo el proceso debe terminar con una extensión .exe). en él y seleccione Seleccionar prioridad para establecer la prioridad (si está configurado en más alto de lo normal, póngalo en normal, de lo contrario, si está configurado en normal y desea reducirlo más que seleccionar un valor más bajo de lo normal) y Establecer afinidad para limitar el no. de procesadores que contribuyen a ese proceso. Establezca el no. de procesadores que desea y luego haga clic en Aceptar para volver. Verifique si esto funciona.

Recuerde que esto funciona solo para computadoras multiprocesador (como dual-core, quad-core, etc.) y también que el uso de la CPU es diferente del uso de la memoria.

Cazador
fuente
1
Perdón por mi error. Olvidé leer que estabas usando Firefox en MAC. No tengo mucha experiencia con MAC, pero si contiene algún administrador de tareas como el de Windows, este método solo funciona para el sistema de Windows.
Hunter
3
Este es un buen consejo, pero de ninguna manera se acerca a responder la pregunta real.
laggingreflex