Bumblebee é uma espécie de driver que controla as placas de video Nvidia Optimus

Muitos dos laptops atuais têm sistemas híbridos de processamento 3D que permitem ter ao mesmo tempo uma placa de vídeo poderosa e um sistema leve para gastar pouca bateria.

No caso dos laptops com placas de vídeo nVidia, este sistema híbrido chama-se Optimus e basicamente funciona desta maneira: a placa nVidia está sempre desligada e a placa Intel (menos potente mas que gasta menos bateria) faz o processamento; quando utilizador quiser fazer uso da placa nVidia, para jogar por exemplo, o sistema liga-a automaticamente e usa-a para processar o jogo.

Este funcionamento por padrão não ocorre no Ubuntu e então ele tem sempre as duas placas de vídeo ligadas e a gastar bateria. Para evitar isso, é necessário instalar um software chamado Bumblebee que basicamente desliga a placa nVidia para poupar bateria e, quando for necessário, abre os jogos utilizando essa placa mais potente.

Este artigo explica então como instalar o Bumblebee. Deve-se ter em conta que para as placas de vídeo Optimus, não se deve instalar os drivers da nVidia, deve-se sim instalar o Bumblebee que faz download e configura os drivers da nVidia proprietários de forma automática.

Grafico antes e depois de desligar a placa de video

Infelizmente, ao contrário dos drivers para Windows, os drivers proprietários da nVidia para o Ubuntu não controlam este sistema híbrido. No entanto, apesar de ter demorado, a comunidade conseguiu produzir este excelente software chamado Bumblebee que tem uma taxa de sucesso muita boa!

Este sistema tem um funcionamento simples e permite aumentar o tempo de vida da bateria drasticamente: visto que as placas de vídeo gastam bastante energia, ao desliga-las fica-se com uma maior autonomia da bateria (veja a diferença na imagem acima).

 

Atalho do Zaz. Comando: Optirun ZazComo funciona o Bumblebee?

Basicamente o funcionamento é o seguinte: Depois de você instalar o Bumblebee, a placa da nVidia ficará sempre desligada até ser necessário. Quando o utilizador quiser fazer uso da placa da nVidia, deverá chamar os programas através do programa do Bumblebee chamado “optirun”.

Para você perceber melhor, ao abrir um jogo é executado um comando, seja no terminal, seja ao clicar no ícone dele. Por exemplo no caso do jogo Zaz, numa situação normal, abrir este jogo seria escrever isto:

zaz

Mas agora, se quiser utilizar o Zaz com a placa da nVidia, você executa o comando assim:

optirun zaz

Ou seja, apenas precisa de pôr antes a palavra “optirun”. Isto aplica-se no terminal mas também nos atalhos dos jogos, o que significa que para você jogar com a placa de vídeo da nVidia sem ter de abrir o terminal precisa de alterar o atalho e incluir a palavra “optirun” no início do comando (tal como pode ver na imagem acima à direita).

 

Instalação do Bumblebee

O Bumblebee foi construído para funcionar de forma extremamente simples e portanto a sua instalação é bastante simples pois passa por adicionar um repositório (na verdade são dois) e instalar o respetivo pacote.

Apesar de toda esta simplicidade, no novo Ubuntu 12.10 existe vários problemas de falta de pacotes e por causa disso exige um procedimento extra. Assim, consoante o seu Ubuntu, siga as respetivas indicações.

Procedimento para os Ubuntus 10.04, 11.04, 11.10 e 12.04

O procedimento de instalação do Bumblebee, e respetivos drivers da placa de vídeo da nVidia, é muito simples. Primeiro execute o comando seguinte que irá adicionar os dois repositórios necessários (o primeiro é do Bumblebee e o segundo contém drivers proprietários):

sudo add-apt-repository ppa:ubuntu-x-swat/x-updates -y && sudo add-apt-repository ppa:bumblebee/stable -y && sudo apt-get update

Quando o procedimento de adição dos repositórios terminar, escreva o comando seguinte para instalar o Bumblebee (que inclui os respetivos drivers):

sudo apt-get install bumblebee bumblebee-nvidia

Reinicie o computador e usufrua do Bumblebee!

 

Procedimento para o Ubuntu 12.10

Tal como referido acima, o Ubuntu 12.10 tem alguns problemas no que toca a configuração do kernel do Ubuntu, algo que ocorre durante a instalação dos drivers proprietários da nVidia e do Bumblebee. Por causa disso, pelo menos enquanto a Canonical não fornece uma atualização para corrigir, o procedimento explicado na secção anterior não funciona. Para além disso, um dos repositórios que é oficial da Canonical não funciona no Ubuntu 12.10, portanto é necessário seguir os passos a seguir apresentados.

Antes de mais convém que você não tenha alguns pacotes, nomeadamente relativos a drivers da nvidia, portanto execute o comando seguinte para remover, caso necessário, esses pacotes:

sudo apt-get purge bbswitch-dkms bumblebee-nvidia nvidia-current

De seguida instale os pacotes que o Ubuntu 12.10 tem em falta em relação aos Ubuntus anteriores:

sudo apt-get install linux-headers-generic

Quando terminar, você já pode adicionar o repositório do Bumblebee, executando o comando seguinte:

sudo add-apt-repository ppa:bumblebee/stable -y && sudo apt-get update

Por fim, execute este comando que irá instalar finalmente o bumblebee e os drivers que forem precisos:

sudo apt-get install bbswitch-dkms bumblebee bumblebee-nvidia

Reinicie o computador e usufrua do Bumblebee!

 

Perguntas frequentes

Através do fórum do Ubuntued e pelos emails que a equipa do Ubuntued recebe conseguimos tirar algumas conclusões acerca de o que os utilizadores procuram. Através dessa informação, nesta parte do artigo apresentamos-lhe algumas informações extra que poderão ser-lhe úteis.

 

Quais são as placas de vídeo compatíveis com o Bumblebee?

O Bumblebee, salvo alguma exceção, é compatível com qualquer placa de vídeo que tenha o sistema Optimus da Nvidia. Como é óbvio, tudo o resto não é compatível. Sistemas com uma placa de vídeo apenas não são compatíveis. E placas de vídeo ATI também não são compatíveis.

De seguida apresenta-se uma pequena lista de placas de vídeo compatíveis com o Bumblebee. Tenha em atenção que o facto de as placas de vídeo serem compatíveis não significa que tenham o sistema Optimus ativo, uma vez que depende também da existência de uma placa de vídeo Intel. Em todo o caso a maioria dos computadores com estas placas de vídeo, têm o sistema Optimus:

  • GeForce GTX 680MX
  • GeForce GTX 680M
  • GeForce GTX 675MX
  • GeForce GTX 675M
  • GeForce GTX 670MX
  • GeForce GTX 670M
  • GeForce GTX 660M
  • GeForce GT 650M
  • GeForce GT 645M
  • GeForce GT 640M
  • GeForce GT 640M LE
  • GeForce GT 635M
  • GeForce GT 630M
  • GeForce GT 625M
  • GeForce GT 620M
  • GeForce 610M
  • GeForce GTX 580M
  • GeForce GTX 570M
  • GeForce GTX 560M
  • GeForce GTX 485M
  • GeForce GTX 470M
  • GeForce GTX 460M
  • GeForce GT 555M
  • GeForce GT 550M
  • GeForce GT 540M
  • GeForce GT 525M
  • GeForce GT 520MX
  • GeForce GT 520M
  • GeForce GT 445M
  • GeForce GT 435M
  • GeForce GT 425M
  • GeForce GT 420M
  • GeForce GT 415M
  • GeForce GTS 360M
  • GeForce GTS 350M
  • GeForce GT 335M
  • GeForce GT 330M
  • GeForce GT 325M
  • GeForce GT 310M

 

Como saber se se tem o sistema Optimus?

A melhor resposta é: na caixa do laptop não existe nada a indicar o sistema Optimus da nVidia? E no próprio computador, não tem nenhuma etiqueta? Normalmente é possível saber imediatamente se se tem o sistema optimus através da resposta a estas duas questões.

Caso você não encontre nada a mencionar que tem o sistema Optimus, o melhor é você averiguar no Ubuntu se tem mais que uma placa de vídeo, em que uma delas é da marca nVidia. Para o fazer, execute o comando seguinte:

lspci | grep VGA

Se o resultado tiver duas placas distintas e uma delas é nVidia tal como é apresentado no resultado abaixo, então você tem um sistema Optimus!

00:02.0 VGA compatible controller: Intel Corporation Core Processor Integrated Graphics Controller (rev 18)
01:00.0 VGA compatible controller: NVIDIA Corporation GT216 [GeForce GT 325M] (rev ff)

 

Como saber se se tem o Bumblebee corretamente instalado?

GLXspheresPara saber se o Bumblebee está corretamente instalado, você precisa de o testar. Para o testar a equipa do Ubuntued recomenda utilizar o programa glxspheres pois este apresenta os FPSs (imagens por segundo) da animação que está a ser executada.

Assim comece por abrir o glxspheres através do comando seguinte, que irá utilizar a placa de vídeo Intel, registe os FPSs que serão apresentados no terminal e feche a janela:

glxspheres

De seguida, execute o glxspheres através do comando seguinte que irá utilizar a placa da nVidia:

optirun glxspheres

Compare então os valores dos FPSs que deverão ser significativamente diferente. Repare por exemplo nestes resultados:

claudio@claudio-N61Jv:~$ glxspheres
Polygons in scene: 62464
Visual ID of window: 0×94
Context is Direct
OpenGL Renderer: Mesa DRI Intel(R) Ironlake Mobile
28.132407 frames/sec – 31.395766 Mpixels/sec
24.859604 frames/sec – 27.743318 Mpixels/sec
28.884755 frames/sec – 32.235387 Mpixels/sec
claudio@claudio-N61Jv:~$ optirun glxspheres
Polygons in scene: 62464
Visual ID of window: 0×21
Context is Direct
OpenGL Renderer: GeForce GT 325M/PCIe/SSE2
122.014798 frames/sec – 136.168515 Mpixels/sec
133.241288 frames/sec – 148.697277 Mpixels/sec
142.252331 frames/sec – 158.753602 Mpixels/sec

 

Problema do nome do driver

Há um pequeno problema que tem aparecido num dos últimos drivers da nVidia, simplesmente porque o seu driver mudou alguns nomes e o Bumblebee está à procura de outros nomes (dos anteriores). Basicamente, por causa disso, este problema não consegue iniciar a placa de vídeo e dá o seguinte erro:

[ERROR]Cannot access secondary GPU – error: Could not load GPU driver
[ERROR]Aborting because fallback start is disabled.

Ora se você tem este problema, a solução é muito simples e passar por editar um ficheiro de texto em 3 lugares. Todo o procedimento está explicado no link seguinte:

 

Problema do acesso ao monitor

Existe também um problema, pouco comum, que é o facto de o driver da nVidia não conseguir aceder ao monitor. A mensagem de erro que aparece neste problema é semelhante à seguinte:

(WW) NVIDIA(GPU-0): Invalid ConnectedMonitor request; request was for ‘DFP’, but
(WW) NVIDIA(GPU-0): the valid display devices are ‘CRT-0′.

A solução, tal como no problema anterior é extremamente simples e exige que se altere apenas uma linha de um ficheiro do terminal. O procedimento está explicado no seguinte link:

 

Referências

25 Respostas ate agora.

  1. Guilherme Huth diz:

    pode fazer um novo tutorial para o ubuntu 13.10??

  2. Muito bom!

    Tenho um notebook Dell inspiron 14R 3540, placa de vídeo NVIDIA 630M. Instalei recentemente Ubuntu 13.04.
    Ele estava esquentando muito, parecia que estava no fogo e não passava nem 2 horas ligado… Procurei muitos tutoriais e só aqui encontrei…

    A diferença é perceptível logo que reiniciei o notebook…

    PARABÉNS!!!

  3. Fábio diz:

    Qubrei a cabeça tentando instalar o driver proprietário da minha placa Geforce GT 630M no Ubuntu 12.04. Este tutorial resolveu 90% da minha vida. Thanks a Lot !

  4. Heleno Santos diz:

    o Driver da minha placa de vídeo GT 630M, não funcionou no Ubuntu 12.10, com isso minha bateria só durava 2 horas. Agora por incrível que pareça, minha bateria informa 9 horas de duração da bateria.
    Muito Obrigado! Belo artigo.

  5. Sami Souza diz:

    Bom dia, pessoal!

    Há algumas semanas estou trabalhando num notebook Asus K45VM com Nvidia Geforce GT 630M. Nele está rodando o Linux Mint 13 64 bits.

    Não estou conseguindo fazer o Bumblebee funcionar.

    Segue a mensagem de erro como aparece:

    "# optirun glxgears
    [10998.756234] [ERROR]The Bumblebee daemon has not been started yet or the socket path /var/run/bumblebee.socket was incorrect.
    [10998.756258] [ERROR]Could not connect to bumblebee daemon – is it running?"

    Busquei várias soluções mas nenhuma deu certo. O que poderia estar errado? Agradeço antecipadamente qualquer ajuda.

    Grande abraço!

    • Você tem que inicializar o bumblebee daemon com o comando sudo bumblebeed start ou bumblebeed -D mas o primeiro comando é o recomendado.

      • Obrigado, Adler!

        Desculpe a demora em responder, mas é que só revisitei o fórum hoje com um pouco mais de tempo. Ando muito atarefado e, por conta de não saber usar o Bumblebee, estou direto com o notebook na tomada.

        Sua dica funcionou perfeitamente!

        Por curiosidade, gostaria de saber por que tive que usar esse “start bumblebeed”. Algo no meu notebook K45VM funciona diferente?

        Pura curiosidade de entusiasta de Linux sem muita experiência com shell.

        Muitíssimo obrigado pela ajuda!!

        Grande abraço!

  6. Samir Reizer diz:

    Claudio, bom dia!
    Tenho um Dell XPS 14Z, com uma intel onboard e uma GeForce 520M.
    Segui seus passos, e consegui configurar corretamente a GeForce. Apenas um detalhe: não consigo ativar o uso do segundo monitor. Ele não detecta quando conecto no MiniDiplayPort ou no HDMI.

    Obrigado,
    Samir

    • Jorge diz:

      Amigo eu tenho dell xps L502X e ja tentei tambem usar o HDMI mas nada funfa .
      Agora faz o seguinte: compra o adptador mini de video, pronto pode usar beleza …tudo da certo
      Sendo mais claro, use a mini porta alta resolução do teu notebook .
      qualquer duvida manda um e-mail jorgenobre@gmail.com

  7. Anderson diz:

    Muito bom cara, muito obrigado e meus parabéns! Finalmente consegui configurar meu notebook com as duas placas embutidas dele!

    Valeu!!

  8. Guilherme Paganini diz:

    Cláudio, queria saber se pode me ajudar em algo que me perturba há muito tempo. A minha HDMI não funciona. Tenho uma nVidia GeForce GT525M, e tenho instalado o Bumblebee desde sempre.
    A minha dúvida é o seguinte, quando queremos utilizar um aplicativo com a placa nVidia temos que digitar $ optirun "nomedoaplicativo", até aí tudo bem, mas será que existe algum comando para que ativemos a placa de vídeo quando quisermos utilizar a HDMI?

    Agradeço desde já!

  9. Gustavo diz:

    tenho um samsung serie 7 chronos, placa hibrida intem e nvidia gt 630m.
    qdo digito o comando: lspci | grep VGA, aparec
    e a seguinte mensagem: gustavo@ubuntu:~$ lspci | grep VGA
    00:02.0 VGA compatible controller: Intel Corporation 3rd Gen Core processor Graphics Controller (rev 09)

    será que alguém pode me dar uma luz.

    ps: Cláudio, parabéns pelo site, já faz tempo que é o meu norte

  10. Jorge diz:

    Parabéns, Cláudio. Obrigado pela dica.
    Será que reduz o consumo da bateria?
    Abraços,

    Jorge

  11. Mariel de Jesus™ diz:

    Olhem o que eu encontrei ontem:
    http://ubuntuforum-br.org/index.php?topic=84528.0

    Deu certo, só quando reinicia o sistema que tem que rodar tudo de novo. Vou desenvolver algo variante disto…

  12. anjokal diz:

    muito bom

    obg

    parabéns pelo blog

  13. Guilherme diz:

    Muito bom esse Bumblebee, uso ele desde a 11.04.
    Consumo da minha bateria caiu pela metade!
    Mas Cláudio, me esclarece uma dúvida, não entendi bem pq vc adicionou o outro repositório também. Eu sempre usei somente o do Bumblebee e sempre funcionou numa boa…

  14. Tiago Neiva diz:

    Ok o bumblebee funciona, mas o Unity não funciona corretamente porque não reconhece a placa Intel como suficiente para correr o Unity.

  15. Marcel Mascarenhas diz:

    Será que teria um problema semelhante para as placas ATI tipo 6470m ? Essas placas ATI trabalham da mesma forma da optimus. Ativando aceleração 3D somente em aplicações pesadas e o restante ficando para o intel 3000. Isso seria muito bom funcionar no ubuntu.

    • Mariel de Jesus™ diz:

      Isso, isso, isso. Tenho um G42-371br da HP que também trabalha assim com drivers AMD/ATI, tem algo para isso por que os drivers proprietários fazem esse serviço mas no ubuntu 12.10 estes não estão funcionando…

  16. Ademir Giraldelli diz:

    Tentei instalar o Bumblebee no meu ubuntu 12.10 e aparentemente o repositório ppa:ubuntu-x-swat/x-updates não está disponível para o quantal como pode ser visto aqui
    http://askubuntu.com/questions/195922/nvidia-quan

    • Cláudio Novais diz:

      Ademir, sim, enganei-me no repositório. Se reparar eu no texto referi repositório do Bumblebee e depois enganei-me e pus o repositório do X SWAT.

      Bem, já corrigi o artigo! Pode segui-lo à vontade que irá funcionar de certeza!

      Quanto ao repositório que você adicionou, remova-o para não dar erros. Para tal, execute este comando:
      sudo rm /etc/apt/sources.list.d/ubuntu-x-swat-x-updates-precise.list*

  17. Cláudio Novais diz:

    Muito obrigado Tony Silva! ;)

Deixe uma resposta a Anderson