Nvidia Optimus em seu laptop Linux instalando Bumblebee

O que é Nvidia Optimus?

Esta tecnologia não é nova, pode-se dizer que é uma melhoria do "antigo" Hybrid SLI e Hybrid Graphics, que permitia administrar a potência quando se combinava um GPU Nvidia com uma placa com Chipset Nvidia em um desktop, agora Optimus permite que façamos o mesmo em nossos laptops com processadores Intel Sandy Brigde (i3, i5 e i7) e Nvidia Gpu. En palabras simplesEsta tecnologia permite alternar entre gráficos discretos e dedicados de acordo com a demanda, ou seja, se rodarmos um Videogame, o sistema ativa automaticamente os gráficos dedicados, mas se estivermos assistindo a um filme, usará gráficos discretos. E em palavras um pouco mais difíceis:

“Ao contrário das gerações anteriores de laptops, as placas gráficas modernas são conectadas por um canal de hardware ao IGP dos processadores Intel, portanto, não há como desabilitar os gráficos do processador apenas para usar a placa gráfica dedicada. O processador atua como um canal de passagem, quando a placa de vídeo dedicada está em modo de espera, o chipset gráfico é usado para renderizar os gráficos, passando as informações para o monitor interno através do conector LVDS do laptop. Porém, se for utilizada placa gráfica dedicada, as informações também devem passar pelo chipset gráfico para chegar ao monitor, por isso não é possível desativar fisicamente o processador IGP e portanto todo esse processo de ativação e desativação deve ser realizada via software, neste caso pelo controlador. » (Leanuxeros.com)

No Windows isso funciona bem (eu diria ótimo, mas sabemos que nada funciona bem com o Windows) e no LinuxPara variar, não há suporte oficial da Nvidia e de acordo com as notícias que tenho lido, eles não têm intenção de fazê-lo a curto ou médio prazo, a isso se acrescenta que na maioria dos computadores não há opção de ativar / desativar um dos gráficos usando o BIOS, o que nos deixa com um cenário bastante desanimador, pois caso apenas o Integrada investimento em GPU dedicada vai para a lata de lixo, em vez disso, se você tiver Nvidia Graphics o desempenho energético ativo (é o usual) nos fará lembrar da Matriz e olhar com bons olhos a ideia de transformar um parente ou vizinho em bateria, porque, como todos sabemos, do Kernel 2.6.38  as baterias dos laptops estão sendo dizimadas e autonomia se tornou uma palavra útil para fazer canções de protesto (no meu caso a bateria durou mais, duas horas).

É por isso que do lado Linux da força, surgiram projetos para apoiar esta tecnologia, mas sem muito sucesso, isto é, até Bumblebee. Bumblebee É uma ferramenta Open Source escrita em linguagem C, que nos permite usar o driver proprietário da Nvidia ou a versão gratuita Nouveau, há poucos dias foi lançada a versão 3.0 que entre outras inovações nos permite ativar automaticamente o gerenciador de energia ativando ou desativando o GPU dedicado de acordo com as necessidades do caso (que é o que nos interessa).

Podemos instalar o Bumblebee a partir do arquivo fonte encontrado em https://github.com/Bumblebee-Project/Bumblebee/downloads

Existem pacotes nos repositórios de Ubuntu, Gentoo, arco y Debian.
Instalei este aplicativo nas duas distros que uso: Debian y arco seguindo as indicações de seus respectivos wikis.

Instalação em Arch

Nós instalamos Bumblebee desde os AUR

$ yaourt -S bumblebee

E nós instalamos interruptor ser capaz de ocupar o gerenciador de energia

$ yaourt -S bbswitch

Com driver Nouveau

Se você vai ocupar os motoristas Nouveau você deve instalar os seguintes pacotes:

$ sudo pacman -S xf86-video-nouveau nouveau-dri mesa

Com Nvidia proprietária

Se você usar os drivers proprietários da Nvidia, nós instalamos esses pacotes do AUR.

$ yaourt -S nvidia-utils-bumblebee dkms-nvidia

configuração

Nós adicionamos nosso usuário ao grupo Abelha:

# usermod -a -G bumblebee $USER (reemplazamos $USER por nuestro usuario)

Testamos se tudo está instalado corretamente e funcionando, executando o abelha manualmente:

$ sudo rc.d start bumblebeed

E mágica ... o GPU Nvidia está desativado e só ficamos com o integrado, aliás, damos um descanso à nossa bateria.

Em seguida, editamos  /etc/rc.conf

Nós adicionamos Bumblebee no Daemons

DAEMONS=(... bumblebeed)

Nós testamos

$ optirun glxspheres

Podemos notar que o integrado é ativado e no final do processo ele desliga dando lugar ao dedicado, se você quiser rodar uma aplicação com o GPU Nvidia nós o fazemos desde o console

$ optirun [opciones] <aplicaciones>

Para ver a lista de opções:

$ optirun --help

Para o cartão dedicado ligar / desligar automaticamente, adicionamos bbswitch na seção Módulos:

MODULES=(... bbswitch …)

Nós editamos  /etc/bumblebee/bumblebee.conf e adicionamos a seguinte linha na seção de drivers:

[bumblebeed] KeepUnusedXServer=false

Nós verificamos que Método PM isso no carro:

[driver-nvidia] PMMethod=auto

[driver-nouveau] PMMethod=auto

Nós reiniciamos o Bumblebee:

# rc.d restart bumblebeed

Instalação em Debian (apenas para teste ou Sid)

Primeiro você deve remover qualquer instalação anterior do Bumblebee, então habilitamos os repositórios não-livre.
Para executar aplicativos de 32 bits em sistemas de 64 bits, é recomendado instalar os seguintes pacotes:

$ sudo aptitude install virtualgl-libs-ia32 and libgl1-nvidia-glx-ia32

Nós adicionamos esses repositórios em  /etc/apt/sources.list

deb http://suwako.nomanga.net/debian sid main contrib
deb-src http://suwako.nomanga.net/debian sid main

Em seguida, baixamos a chave e a adicionamos:

# wget -O - http://suwako.nomanga.net/suwako.asc | apt-key add -

Nós atualizamos:

# aptitude update

Nós instalamos:

# aptitude install bumblebee bumblebee-nvidia

Adicionamos nosso usuário ao grupo Bumblebee:

# adduser $USER bumblebee (reemplazamos $USER por nuestro usuario)

Reiniciamos e testamos se está funcionando com:

$ optirun glxgears

Se quisermos executar um aplicativo com uma GPU dedicada, fazemos o seguinte em um terminal

$ optirun <aplicación>

Por fim, posso dizer que minha experiência com este aplicativo tem sido muito boa, alguns amigos do DesdeLinux eles testemunharam como eu desisti de tentar sem sucesso instalar os drivers proprietários da Nvidia nas distros que ocupo (Debian e Arch), até que me deparei com o Bumblebee, por outro lado, a bateria das últimas duas horas foi para uma média de três horas e meia e a temperatura do laptop caiu de 54 ° para uma média de 45 °.

Parece-me que enquanto a Nvidia não decidir oferecer suporte oficial ao Optimus no Linux, ou se você não estiver interessado em ter drivers proprietários, mas rodando sua GPU Nvidia, o Bumblebee é uma excelente alternativa.


17 comentários, deixe o seu

Deixe um comentário

Seu endereço de email não será publicado. Campos obrigatórios são marcados com *

*

*

  1. Responsável pelos dados: Miguel Ángel Gatón
  2. Finalidade dos dados: Controle de SPAM, gerenciamento de comentários.
  3. Legitimação: Seu consentimento
  4. Comunicação de dados: Os dados não serão comunicados a terceiros, exceto por obrigação legal.
  5. Armazenamento de dados: banco de dados hospedado pela Occentus Networks (UE)
  6. Direitos: A qualquer momento você pode limitar, recuperar e excluir suas informações.

  1.   Diego urbina dito

    Excelente trabalho, obrigado por compartilhar sua experiência e nos ajudar a melhorar.

    1.    Moscosov dito

      Obrigado pela visita.

  2.   Perseu dito

    Excelente artigo, amigo 😉 e bem-vindo a bordo: D. Boa sorte, mano.

  3.   Moscosov dito

    Graças a você mano. 😉

  4.   Juiz 8) dito

    Ótimo artigo.

    A verdade é que comprei recentemente um novo laptop. Eu queria que os gráficos fossem NVIDIA, porque em todos os computadores que tive, sempre funcionou muito bem e com os drivers proprietários funciona muito bem no Linux.

    Fiquei surpreso ao ver a nova tecnologia usando 2 processadores gráficos, mas mais surpreso ao ver que o suporte ao Linux era fraco ou sem suporte.

    Então eu pulei na piscina e optei por uma placa de vídeo Intel e até agora estou muito feliz.

    É verdade que alguns jogos não parecem muito certos (pequenos problemas muito específicos ou bugs graves em jogos proprietários antigos). Mas, em geral, parece-me que é uma opção muito válida e boa.

    Os processadores gráficos Intel são suportados pelo kernel, o que significa que você pode instalar sua distro Linux e ter aceleração 3D sem fazer nada. Artigos de papelaria, jogos, etc. não há necessidade de configurar ou compilar.

    Além disso, quando o kernel é atualizado, com os drivers proprietários é necessário recompilar, com os livres, tudo funciona bem porque os drivers também são atualizados por si próprios.

    E por último os drivers estão sendo melhorados versão a versão, então imagino e espero que no futuro os pequenos bugs que existem hoje sejam resolvidos.

    Eu não gostaria de anunciar uma marca em vez de outra, mas o fato de que o pessoal da Intel está ajudando a tornar seus drivers de produto gratuitos e Linux para ter suporte aceitável para seu hardware é algo em que devemos pensar quando for comprar um novo computador.

    Apesar das desvantagens, o fato de poder ter suporte 3D "fora da caixa" com Linux me compensa.

    Uma saudação!

  5.   Projeto de vida dito

    Olá:

    Isso afeta os computadores desktop?

    Uma saudação.

    1.    Moscosov dito

      O Optimus está disponível apenas em laptops.

  6.   Carlos-Xfce dito

    Olá, Moscosov. Muito obrigado por este artigo. Você toca em uma questão muito importante, a dos processadores. Eu gostaria de te fazer uma pergunta. Olha, estou ansioso para comprar um computador desktop para edição de vídeo e criação de animação multimídia para fins educacionais, rodando em GNU / Linux, é claro. Eu gostaria que fosse um processador do novo i7, que é um investimento que vai durar pelo menos 5 anos. Mas eu não sei nada sobre placas-mãe, ou memórias, e menos ainda sobre processadores. Você poderia fazer um artigo recomendando algo assim? Eu não gostaria de comprar o melhor processador para que os drivers gráficos não mostrem sua potência total porque não estão funcionando no Windows. Agradecimentos para sua atenção.

    1.    Moscosov dito

      E quanto dinheiro (em dólares) você tem Carlos?

  7.   Pandev92 dito

    As informações são muito boas para o que dizem, mas é claro, se você vai ter dual boot para jogar em hasefroch, o desempenho é terrível.

  8.   maximiliano dito

    bom, digo-vos que tenho linux mint 12 e um asus k53sc, no meu caso quando quero adicionar

    $ sudo aptitude install virtualgl-libs-ia32 e libgl1-nvidia-glx-ia32

    me diz que:
    Não foi possível encontrar nenhum pacote cujo nome ou descrição correspondesse a "virtualgl-libs-ia32"

    o outro instala um.

    Mesmo assim, não entendo bem como funciona o bumbleebe, pergunto é necessário ativar a placa da nvidia antes de instalar o bumblebe?

  9.   banheiro dito

    Excelente explicação sobre o Bumblebee. Estou tentando implementá-lo no Centos 5.7. Você tem ideia de como fazer isso de uma forma fácil. Acho que ainda não está no elrepo.org.
    obrigado

  10.   Taranis dito

    Olá,
    excelente contribuição. Eu estou atrás de algo assim há algum tempo, embora eu esperava carregá-lo do zero para que o desktop pudesse aproveitar as vantagens da Nvidia.
    Como posso saber se um aplicativo funciona aproveitando as vantagens da Nvidia. Quero dizer assim, por exemplo, executar um jogo através do wine e wine carregá-lo através do optirun.
    Não sei se me explico muito bem.

    Muito obrigado pelo documento.
    Saudações.

  11.   mais rápido dito

    Muito Obrigado…. Não funcionou por muito tempo tentando instalar os drivers primitivos ou os livres, nada funcionou mas isso ... funcionou ... você está ótimo ... !!

  12.   armandoplc dito

    Testando .. Obrigado .. !!! .. uma pergunta, a única maneira de abrir os aplicativos usando Nvidia seria a partir do console ?? .. Saudações

    1.    Jorgício dito

      Claro, ou criando um script para invocar o optirun sempre que quiser usar a placa Nvidia. Ele ainda oferece um excelente desempenho gráfico e eu o uso mais para jogar Minecraft e os jogos estranhos que o exigem 😛

  13.   dcoy dito

    Desculpe a ignorância, mas funcionaria com a minha nvidia?, Fazendo um lspci eu entendi:

    04: 00.0 controlador 3D: NVIDIA Corporation GK107M [GeForce GT 750M] (rev a1)

    Obrigado! 😀