Por que o Firefox causa “picos” de alto uso da CPU a cada poucos segundos?

9

Quando inicio o Firefox, não tenho problemas por um tempo, mas depois de alguns dias, picos de CPU começam a ocorrer. Durante um pico, o Firefox congela e depois pára. Os picos ocorrem a cada sete a dez segundos e cada ponto dura por dois a três segundos . Se eu estiver digitando quando ocorre um pico, os caracteres saem somente após o pico. Eu inicialmente pensei que este problema era por causa do Flash, então eu o desativei, mas o problema ainda ocorre.

Além disso, o uso de memória do Firefox aumenta para mais de 600 MB após vários dias.

A lista de extensões e plugins do Firefox que eu uso está disponível aqui .

    
por Boris_yo 27.05.2011 / 15:13

5 respostas

8

Eu suspeito que seja o Garbage Collector ou o Cycle Collector.

Em about:config alterar javascript.options.mem.log para true . Agora, avisos sobre GC e CC devem estar disponíveis no console de erros ( Crtl + Shift + J ). então este é o seu problema.

Quando tive esse problema, consertei-o removendo meu perfil do Firefox e criando um novo a partir do zero. Os perfis do Firefox têm uma tendência a acumular muita farinha ao longo do tempo.

Mesmo isso não é uma solução perfeita. Se você abrir muitas abas no Firefox (100+) ou muitas extensões e deixar o Firefox rodando por dias a fio, inevitavelmente ele vai ficar mais lento. Você precisará reiniciar o Firefox de vez em quando.

Se você é como eu e tem uma tendência a reunir uma grande coleção de abas para lidar em algum ponto, outro truque que eu uso é definir browser.sessionstore.max_concurrent_tabs para 0. Isso impedirá que o Firefox carregue todas as abas da sua sessão ao iniciar. Em vez disso, eles serão carregados quando você alternar para eles. Acho que isso, além do reinício ocasional do Firefox, reduz muito a carga de ter muitas guias.

    
por 27.05.2011 / 15:34
9

Em about:config , defina browser.sessionstore.interval para um número grande (deve ser 10,000 ou 15,000 ; defina como 600,000 ).

Basicamente, esse é o número de milissegundos entre os horários em que o Firefox atualiza sua "sessão salva". Se você tiver muitas guias abertas ou um longo histórico de navegação (ou, como costuma acontecer comigo), isso pode estar gravando uma quantidade ridícula de dados no arquivo sessionstore.js a cada 10 ou 15 segundos, o que pode causar Flash vídeos para congelar rapidamente ou até mesmo renderizar todo o seu computador congelado a cada poucos minutos.

Configurar este valor para um número grande tem a desvantagem de que, se o Firefox travar, você perderá seus últimos minutos de histórico de navegação quando tentar restaurar. Esse é um pequeno preço a pagar na minha opinião.

Seus picos de CPU devem se tornar muito menos freqüentes.

    
por 13.03.2012 / 03:47
4

Não consertará vazamentos de memória, por si só. Mas a ativação de "Não carregar guias até selecionadas" pelo menos não carregará as guias até que você clique nelas depois de uma reinicialização, o que mantém a memória muito baixa.

Eu também encontrei usando CCleaner para limpar o Firefox "Session" ajudou um pouco. Faça backup de todas as guias abertas, pois elas removerão as informações de recuperação da sessão. Antes de executar o CCleaner, meu arquivo sessionstore.js tinha cerca de 800 KB, mas depois passou para cerca de 6 KB.

Mais informações sobre o sessionstore podem ser encontradas em Resolvido: o Firefox congela a cada 10 segundos, a rolagem é agitada .

A desinstalação do Flashblock corrigiu meus problemas de alta CPU com o Firefox. Talvez o Flashblock e o Adblock Plus ou alguma outra extensão não se dê bem?

A vida é curta demais para mexer com o Firefox. Acabei de exportar meus favoritos e desinstalei o Firefox, excluí todas as pastas do Firefox na máquina, depois reinstalei o Firefox do zero e restaurei os marcadores. Agora ele é executado mais rapidamente do que o Google Chrome com uma instalação totalmente nova.

    
por 13.01.2013 / 07:10
2

É muito difícil dizer. É apenas o uso geral que causa isso, ou você está acessando um site específico? (Tivemos um problema em que um navegador ganhou memória com o tempo devido a um vazamento de memória em jQuery ).

Supondo que você esteja usando um sistema operacional da Microsoft, tente usar a ferramenta Monitor de processo da Microsoft . Ele distribui um monte de mensagens, mas você deve ser capaz de restringi-las ao intervalo em que ocorreu o 'congelamento' e, talvez, ver qual processo está fazendo o bloqueio.

    
por 27.05.2011 / 15:28
0

Se você ainda não estiver fazendo isso, tente atualizar para o Firefox mais recente. Eles trabalharam duro para reduzir esses vazamentos de memória.

    
por 27.05.2011 / 16:07