O Google Chrome é interrompido brevemente antes de renderizar uma nova guia

9

Sempre que eu quiser mudar para uma guia diferente da que está sendo renderizada, o Chrome trava por cerca de dois segundos antes de renderizar a nova guia. Isso ocorre sempre que uma nova guia tiver que ser mostrada, como clicar no botão "Nova guia" ou fechar a guia atual.

Estas são as informações da minha versão:

Google Chrome 14.0.835.163 (Official Build 101024)

OS:Linux (Ubuntu 11.04)

WebKit 535.1 (branches/chromium/835@94713)

A única extensão que eu uso é o AdBlock, e desativá-lo não teve efeito.

Isso só está ocorrendo comigo desde a atualização para a versão mais recente do Chrome.

Alguma ideia do que está acontecendo?

    
por Alex Dias 19.09.2011 / 22:16

3 respostas

4

Eu encontrei um comportamento semelhante com guias que não eram (pré) renderizadas no plano de fundo e, às vezes, nem mesmo quando colocadas na frente. Felizmente, lembrei-me de ter ativado o GPU-Compositing em about: flags (que funcionou bem até uma ou duas semanas atrás). Desabilitar novamente resolveu esse problema.

    
por 03.05.2012 / 13:58
1

Eu apenas agora rastreei outro problema com libcairo2 atualmente no Debian Sid. Veja o bug Debian # 682308 .

Com cairo-1.12.0 , há um erro de regressão que causa a alternância de guias e a abertura de novas guias no Google Chrome e no Chromium é interrompida de maneira significativa e aumenta o uso de xorg da CPU.

Três soluções diferentes são mencionadas no relatório de bug, aguardando uma correção upstream:

  • Rodando

    nvidia-settings -a InitialPixmapPlacement=0
    
  • Fixando o pacote à versão 1.10.2-7 .
  • A criação recente de libcairo com alteração de patch src/cairo-xlib-display.c , definindo display->buggy_gradients para ser sempre TRUE (de uma postagem nos fóruns do Debian ) (considere fixar também, no caso de o futuro libcairo2 updates ainda não ter a correção).

Isso finalmente resolveu meus problemas.

UPDATE

Isso é supostamente corrigido no driver Nvidia 304.30 lançado em 2012-07-30. Do changelog (ainda não online, devido a recente invasão do NvNews recentemente e a própria página da Nvidia que não hospeda o changelog especificamente, mas está dentro do pacote binário que eles fornecem):

- Fixed a problem where RENDER Glyphs operations would exhibit severe
  performance issues in certain cases, such as when used with gradients
  by Cairo and Chromium.

ATUALIZAÇÃO 2

... e agora esta versão do driver atingiu o Debian Unstable, pelo menos.

    
por 27.07.2012 / 15:33
0

Como as guias do Google Chrome são trapezoidais, elas usam uma função específica no driver chamada "aceleração trapezoidal", que é suportada em hardware por circuitos Nvidia mais recentes .

Em circuitos mais antigos sem esse suporte, havia um bug que aparecia em combinação com upgrades para o X.org 1.11 (onde eu acho que o X.org começou a suportar renderização trapezoidal direta) que fez renderização trapezoidal muito mais lenta do que deveria seja (muito mais lento do que era com combinações anteriores de driver / servidor X.org). Eu corro uma GeForce 9400 que é um dos circuitos afetados.

O relatório de erros do Debian .

O anúncio de correção do driver da Nvidia em 290.03 .

Pessoalmente, eu tive esse problema com versões ainda mais recentes da Nvidia (295.40), que persistiram por meio de uma reinicialização, mas por algum motivo apenas lançar nvidia-settings corrigiu.

O Chrome ainda é muito mais lento do que, por exemplo. Opera na troca de abas e criação na minha máquina, mas já não induz atrasos de vários segundos. De tudo o que posso dizer, está de volta à velocidade que era antes da introdução do bug.

EDIT: Esta informação é tão verdadeira quanto antes, mas houve um bug adicional que afetou todas placas NVIDIA. Veja minha outra resposta para mais informações.

    
por 02.05.2012 / 12:52