Firefox e o elevado consumo de memória

Por: em 15/02/06 na(s) categoria(s): Internet


Se tem uma coisa que as pessoas podem reclamar do Firefox 1.5 é do consumo exagerado de memória. Ao menos se comparado com navegadores “mais leves” como o Opera, por exemplo. Mas ao contrário do que se pode pensar a princípio, o exagerado consumo de memória que acontece quando você começa a abrir abas demais no Firefox 1.5 não é bem um problema. Estou com 4 abas abertas e o meu Firefox 1.0.6 esta consumindo 115MB de RAM no momento, mas usuários têm relatado consumos de memória de até 800MB de RAM. Claro que todo software complexo apresentará alguns pequenos problemas, e os vazamentos de memória são os problemas mais comuns. Um vazamento de memória é quando um programa pega memória para executar algo e quando esse processo termina essa memória não é devolvida adequadamente para o sistema operacional usar com outros programas.Mas o consumo de memória do Firefox 1.5 não é um problema, e sim algo intencional, planejado inclusive. Quando você navega com o Firefox 1.5 ele vai armazenando em um cache, na memória RAM de sua máquina, todas as páginas que foram exibidas, até um total de 8 páginas. Elas são armazenadas já renderizadas, completas, assim se precisarem ser exibidas novamente elas são apenas puxadas desse cache, sem que uma renderização completa precise ser executada. Isso agiliza muito a nova exibição de uma página pela qual você tenha passado a pouco tempo, em troca o Firefox toma para si quantias muito grandes de memória. Essa decisão de projeto foi tomada após uma pesquisa que indicou que 39% das páginas exibidas foram visitadas a menos de 10 páginas atrás. Assim existe uma chance muito grande de que a página que você pedirá para o navegador mostrar já esteja na memória de sua máquina e se ela estiver mesmo o Firefox 1.5 pode carregá-la mais rápido.

Mas se você não fizer questão deste recurso, se tiver pouca memória RAM disponível, ou se quiser diminuir a quantidade de páginas armazenadas basta alterar a opção browser.sessionhistory.max_total_viewers carregando a página de opções do Firefox digitando no campo de URL a expressão about:config. Reduzir este parâmetro para 0 (zero) desligará essa função e fará o navegador usar pouca memória do sistema, mas o desempenho ao fazer o carregamento e montagem de páginas será menor. É uma escolha que você deve fazer baseada no seu uso do navegador. A opção só existe no Firefox 1.5. Antes de mudar o parâmetro apenas para economizar memória você deve lembrar-se de um antigo ditado da informática: memória RAM não usada é memória RAM desperdiçada. Já que sua navegação vai ficar mais lenta você deve decidir se vale a pena liberar memória apenas para que ela fique vazia.

Configure o navegador de acordo com sua preferênca e bom uso!

  • http://pietra@hotmail.com Anônimo

    Bom, eu desativei aqui, e realmente está usando só 30mb de ram, mas a renderização das páginas continua a mesma coisa.

  • http://pietra@hotmail.com Anônimo

    engraçado !!
    fui lá no meu firefox, e ví que a opção em referencia (browser.sessionhistory.max_total_viewers) estava marcada com o valor de 1 negativo (-1) …
    quanto ao usar abas abertas, eu chego a viver com pelo menos 10 abas abertas, e não sinto muita perda de desempenho p/uma máquina com 512MbRam.

  • http://pietra@hotmail.com Anônimo

    Aqui continuou consumindo de 60 a 90M … mas aparentemente, ficou mais leve. :)

  • http://pietra@hotmail.com Anônimo

    O meu também estava com o valor -1.
    Não sei se é coisa comum, mas aqui, com 512mb de ram, e mais ou menos 12 abas abertas, não fica lento.
    Eu uso aqui Slackware + Firefox 1.5.

  • http://pietra@hotmail.com Anônimo

    P.S: O meu tava -1 também

    PP.SS.: Engraçado como o Opera é muito mais rápido que o FFox e consome no máximo 20M de memória. Já pensei diversas vezes em migrar pro Opera, só que não dá pra viver sem as extensões do FFox hehehehe .. :)

  • http://pietra@hotmail.com Anônimo

    Dica muito boa!
    Qual o programa que vocês usam pra monitorar o uso de memória?

  • http://pietra@hotmail.com Anônimo

    Bom, eu tenho 1gb de ram num XP 2080mhz. O problema é que eu tô sempre com o Dreamweaver/Photoshop/WSftp abertos e o Firefox e IE e as vezes o flash. Então a máquina começava a ficar meio lenta, eu tinha que fechar o FF e abrir de novo. Eu só uso 4 extensões, e mesmo assim ele chegava a consumir toda a memória restante. Agora tá tudo rodando rápido, e não senti mesmo nenhuma diferença quanto a velocidade para abrir páginas.

  • http://pietra@hotmail.com Anônimo

    aqui tb tá -1 e agora?

  • http://pietra@hotmail.com Anônimo

    Falcon, não tenho certeza, mas parece que o Firefox calcula a quantidade de memória do computador e com base nisso é que define a quantidade de páginas que são armazenadas. De 0 pg para 32 MB de memória, até o total de 8 pg. Dá uma olhada nesse link, mais ou menos na linha 160.
    http://lxr.mozilla.org/seamonkey/source/docshell/shistory/src/nsSHistory.cpp#161

  • http://pietra@hotmail.com Anônimo

    De fato, se você seguir o link fornecido no artigo perceberá que a opção padrão é -1, com este valor o Firefox escolhe o número de caches a fazer de acordo com a tabela:
    RAM Number of Cached Pages
    32MB 0
    64MB 1
    128MB 2
    256MB 3
    512MB 5
    1GB 8
    2GB 8
    4GB 8
    Ou seja, se vc tem 64MB de ram o FF fará cache de 1 página. Se vc tiver 1GB ele fará de 8 páginas.

    Se vc colocar na referida opção qualquer valor positivo esse será o número de páginas que o FF armazenará, ou tentará até completar a memória. Se vc colocar zero ele não fará esse tipo de cache e economizará o máximo de memória possível, que fica para outras aplicações.

  • http://pietra@hotmail.com Anônimo

    com certeza ele consome 700 aki no meu pc… =[
    eu odeio isso, até insalei o Opera 8.5 pra usar de vez em quando .

  • http://pietra@hotmail.com Anônimo

    Depois de um tempo com ele aberto, chegou a consumir 120mb com 6 abas abertas… ainda acho muito.

    Entrei na config novamente e zerei todas as chaves “browser.sessionhistory”

    agora vou manter aberto novamente por algumas horas pra testar

  • http://pietra@hotmail.com Anônimo

    Pow o meu tb estava -1.
    E eu estava com mais de 6abas abertas e estava gastando 63mb.
    Agora alterei o valor para 5. Sendo que eu tenhu 768mb, o valor está bem ajusado, pois tb utilizo outros programas e não quero que o FF me toma td a Memoria RAM.
    Para o pessoal que fala q o FF eh masi devagar q o Opera, esperimenta a extensao chamada FasterFox( http://fasterfox.mozdev.org/ )
    []s

  • http://pietra@hotmail.com Anônimo

    Não só o Firefox que pode ser editado a partir da pagina de configurações about:config.
    o Flock, também. como eu tenho os dois, procuro usar o que cada um tem de melhor.

  • http://pietra@hotmail.com Anônimo

    O melhor deste recusro é quando se trata de downloads de arquivos. Por exemplo, se você assistiu um vídeo QuickTime no browser, e depois que baixá-lo, não é preciso esperar o download completo.

  • http://pietra@hotmail.com Anônimo

    Aqui ficam algumas dicas para acelerar o Firefox.

    Encontrei-as em http://informatica.forumvila.com , eu próprio experimentei e digo-vos que resulta, para além de não causar problemas.

    1. No campo do endereço escreve about:config

    2. Em filter escreve cache

    3. Muda o valor de browser.cache.disk.capacity para 10240 (valor em Kb), e o valor de browser.cache.memory.enable para false.

    Explicando o que acabamos de fazer…

    browser.cache.disk.capacity
    A cada vez que entramos num site é feito um cache com as imagens e tudo que seja relacionado com aquele site, assim sempre que saimos e voltarmos novamente a entrar no site o browser procura os dados do site no seu cache interno, procurando a carga de imagens e tudo relacionado com a aparência do mesmo, como arquivos CSS, etc… O que fizemos foi reduzir o cache em disco para 10MB, note que em alguns sites parece que o browser fica pensando um pouco antes de mostrar as imagens em fóruns por exemplo, conforme você vai usando o Firefox esse cache vai aumentando e com isso ele demora mais para analizar o cache para encontrar os arquivos relacionados com o site que você deseja ver, o tamanho original era de 500000Kb (cerca de 488Mb).

    browser.cache.memory.enable
    Esta função faz com que o cache seja armazenada na memória do computador, fazendo com que o acesso à cache fique muito mais rápida (milésimo de segundo vs nano segundo). Mas se ajuda na navegação, por quê desactivar? Alguma vez minimizou a janela do Firefox e foi fazer outra coisa depois de passado algum tempo ao restaurar a janela nota que o Firefox leva algum tempo para aparecer na janela, dependendo do computador chega até a encravar o programa. Desligando esta opção o Firefox trabalha mais leve, note que depois de muito tempo de uso do Firefox o consumo de memória vai aumentando até que chega a um ponto que fica pesado, desligando a função acima resolve esses problemas.

    Mais algumas alterações…

    network.http.max-connections: 48

    network.http.max-connections-per-server: 24

    network.http.max-persistent-connections-per-proxy: 12

    network.http.max-persistent-connections-per-server: 6

    network.http.pipelining: true

    network.http.pipelining.maxrequests: 32

    network.http.proxy.pipelining: true

    Firefox (FF) é suposto de uma forma dinâmica libertar memória RAM da cache para poder ser utilizada por outras aplicações, só que “parece” que com a configuração por defeito (51 MB) a coisa não é bem assim. Os experts no assunto aconselham a que se limite o valor da memória cache para 16MB para que ocorra a referida libertação de memória para outras aplicações. Para alterar esse valor os procedimentos são os seguintes:

    • Abrir o Firefox e no campo do endereço digitar about:config e clicar no Enter
    • Clicar com a tecla direita numa qualquer linha
    • Seleccionar New e Integer
    • Na janela que se abre escrever browser.cache.memory.capacity
    • Clicar Ok e na nova janela que se abre escrever 16000
    • Clicar OK e fechar o FF

    Fiz tudo q isso ai tá dizendo, realmente ficou mais rápido, mas páginas como a da uol e americanas que eu frequentava, agora não abrem mais no firefox, alguém tem uma dica ai pra resolver sem reinstalar.

  • http://pietra@hotmail.com Anônimo

    Estou largando de mão o Firefox, apesar de estar muito acostumado com ele. mas 138Mb de memória com 5 abas abertas é demais, vou tentar o opera, até eles resolverem esse problema…

  • http://pietra@hotmail.com Anônimo

    Resolvi o problema, na etapa 3, é só fazer o que descrevo, agora abro tudo sem nenhum problema, e sem da pau na memória, Firefox The Best.

    3. Muda o valor de browser.cache.disk.capacity para 5000 (valor em Kb), e o valor de browser.cache.memory.enable para true.

  • http://pietra@hotmail.com Anônimo

    Pessoal vale lembrar q mesmo q ele demore algumas paginas, ele tem a melhor engine (Motor de Rendenização), ele quando exibe a pagina ela fica bem alinhado equanto em outros navegadores fica com alguns erros.

  • http://pietra@hotmail.com Anônimo

    falcon o que o browser.sessionhistory faz exatamente?

  • http://pietra@hotmail.com Anônimo

    existem duas chaves browser.sessionhistory:
    browser.sessionhistory.max_entries
    browser.sessionhistory.max_total_viewers

    A primeira delas até onde eu sei armazena o número de páginas que serão guardadas no histórico de navegação do seu navegador para a seção atual. Ou seja, se você abrir uma aba apenas e ir pulando de página em página o número máximo de páginas atrás para as quais você poderia voltar está setado nesta chave

    A segunda refere-se ao número de páginas prontas que o Firefox vai guardar em sua memória RAM para uma possível reexibição imediata. Uma página guardada assim consome boa quantidade de RAM, mas diminui o uso da conexão e do processador. Segundo a Mozilla desligar esse campo (com valor 0) vai tornar a montagem das páginas no navegador um pouco mais lenta.

  • http://pietra@hotmail.com Anônimo

    eu coloquei o em browser.sessionhistory.max_total_viewers, mas deu uma olhada e ainda tá gastando 123 MB, por que isso ? O FasterFox eleva também o consumo de memoria?
    Se fom me falem que eu tiro ele agora! Onte tava tudo numa boa, hoje velto os 125MB, problema de deixar assim é que eu fico no maximo duas horas e tenho que reiniciar, por que o firefox começa a travar, esse é o problema, to quee pensando em abandonar o Firefox por causa disso, na versão anterios (1.0.7 eu acho), não travava tanto, só troquei, por que não podia mais baixar novas extensões e temas, ai o firefox fica até sem graça !

  • http://pietra@hotmail.com Anônimo

    Eu gostaria de saber, qual consome mais memória RAM. Abas, ou Janelas??? ou é tudo a mesma coisa

  • http://pietra@hotmail.com Anônimo

    Achei uma maneira de parar de sofrer com o Firefox !!Tem uma extensão que resolve o problema do Firefox gastar muita memoria, e o Cache Status https://addons.mozilla.org/extensions/moreinfo.php?id=1881&application=firefox
    Com ele vc ve o quanto de memoria o firefox tá usando, clicando com o botão direito você tem quatro opções, numa delas você pode limpar cache de RAM, resolvendo os problemas pelo menos no meu caso, sempre que almenta muito o uso de memoria, o Firefox começa a travar, por isso eu precisava memso de uma ferramenta pra liberar essa memoria, sem reiniciar o Fire, por que ele demora muito pra carregar, espero que isso tenha ajudado.

  • http://pietra@hotmail.com Anônimo

    Guilherme, como é intencional da Mozilla, acho que vc usar janelas ou abas com o Firefox não vai fazer nenhuma diferença!!! Mas se quiser faça um teste.

  • http://pietra@hotmail.com Anônimo

    Me ajudem !!! eu fiz algumas das alterações dessse artigo e também dos comentarios e meu Firefox não tá carregando imagens, alguém me da uma ajuda? eu tentei desfazer, mas mesmo assim não deu certo ainda não carrega imagensa direito o firefox !!!

  • http://pietra@hotmail.com Anônimo

    Verifique em Editar (ou Ferramentas) -> Preferências -> Conteúdo Se a opção Carregar imagens está ativada.

  • http://pietra@hotmail.com Anônimo

    a opção de carregar imagem esta ativada, mas ainda tem site que a imagem não carrega!

  • http://pietra@hotmail.com Anônimo

    Puck pq não tenta fazer o q fiz, tenho 2 mensagens ai, tenta fazer o q tem nelas, pq aqui uso sem nenhum problema, mas o seu firefox tem q ser o último.

  • http://pietra@hotmail.com Anônimo

    Jansen eu fiz algumas das auterações que vc sugeriu, mas o firefox agora não tá carregando imagens !
    Eu desfis tudo, mas mesmo assim o firefox não tá carregando imagens ! E o meu firefox é o ultimo, o 1.5.o.1 !! Mais recente que esse só tem o 1.6 beta!
    Que voi esperar uma versão final ai instalo !!

  • http://pietra@hotmail.com Anônimo

    Puck já tentou reinstalar o firefox, e fazer as modificações q mencionei. Quando fiz a primeira vez deu pau em algumas páginas, elas nem abriam, depois corrigi na minha segunda mensagem. Até hoje utilizo com as configurações q mensionei e fica bom demais o firefox aqui.

  • http://pietra@hotmail.com Anônimo

    beleza, vou reinstalr o Firefox !!!

  • http://pietra@hotmail.com Anônimo

    pUck
    Aqui deu esse problema em alguns sites tb… botei essa opção de volta pra true e voltou a funcionar

    browser.cache.memory.enable

    boa sorte aí

  • http://pietra@hotmail.com Anônimo

    ACHEI INTERESSANTE AS DICAS! USEI ALGUMAS E AGORA TO NAVEGANDO BEM MELHOR!
    VALEU!

  • http://pietra@hotmail.com Anônimo

    fiz a alteração que o Jansen propôs de mudar para “false” o “browser.cache.memory.enable” e depois de um tempo o ff deixou de acessar algumas páginas, entre elas a do google.br, que voltou ao normal depois que mudei novamente para “true”…

  • http://pietra@hotmail.com Anônimo

    Kadu se vc tives-se dado uma olhadinha um pouco mais teria visto que também tive o mesmo problema com algumas páginas mas resolvi colocando:

    Resolvi o problema, na etapa 3, é só fazer o que descrevo, agora abro tudo sem nenhum problema, e sem da pau na memória, Firefox The Best.

    3. Muda o valor de browser.cache.disk.capacity para 5000 (valor em Kb), e o valor de browser.cache.memory.enable para true.