sábado, 26 de janeiro de 2013

Erro no Bumblebee: Cannot access secondary GPU

Artigo retirado do Forum Ubuntued de autoria de Cláudio Novais

O Bumblebee é um software open-source excelente para a gestão das placas de vídeo híbridas da Nvidia (Nvidia Optimus).

Infelizmente a Nvidia não teve a decência de fazer um programa de gestão para o Ubuntu e apenas fez para o Windows. Felizmente a comunidade Open-Source trabalhou arduamente durante meses até que conseguiu produzir algo espantoso, o Bumblebee. Espantoso pois é um software quase resultante de tentativas-erro uma vez que a Nvidia não se abriu para facilitar o desenvolvimento do Software.
Aparte da falta de respeito da Nvidia para com os consumidores, o bumblebee desde há uns meses que tem funcionado perfeitamente bem. No entanto, numa das últimas atualizações dos drivers da Nvidia, o Bumblebee deixou de funcionar apresentando o erro seguinte:

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

Este erro ocorria sempre que se se tentasse arrancar alguma aplicação com a placa de vídeo da Nvidia, através do comando optirun. Por exemplo, eu tentava arrancar com o blender e o resultado era a falha da ativação do GPU:
claudio@claudio-N61Jv:~$ optirun blender
[ERROR]Cannot access secondary GPU - error: Could not load GPU driver
[ERROR]Aborting because fallback start is disabled.
claudio@claudio-N61Jv:~$
Como eu precisava de utilizar o blender na máxima performance, com o CUDA, precisava inevitavelmente que este problema fosse resolvido. Investiguei na Internet e encontrei a solução que resolve muito rapidamente este problema. A solução que encontrei foi escrita por Rafael Reggiani Manzo num artigo intitulado “Ubuntu 12.04 + NVIDIA 304.37 + Bumblebee” ao qual desde já agradeço a partilha da informação.

Como resolver este problema do Bumblebee?


Bom, pelo que é referido, o problema está no facto da Nvidia ter mudado alguns nomes na sua última atualização (creio que este problema surgiu na atualização que resolveu a brecha de segurança referida aqui). Nomes do Kernel, driver e módulo.

Portanto a solução é bastante simples, pois passa simplesmente por alterar um ficheiro de configuração do bumblebee em 3 partes. Assim, comece por abrir o ficheiro para o editar:

sudo gedit /etc/bumblebee/bumblebee.conf

De seguida, procure pelas linhas seguintes e substitua-as:

Linha a substituir Substituir por:
Module=nvidia Module=nvidia-current
KernelDriver=nvidia-current KernelDriver=nvidia
Driver= Driver=nvidia

No final o ficheiro deverá ter o aspeto desta imagem abaixo. Clique nela para visualizar no tamanho normal.


Depois só precisa de reiniciar o serviço do Bumblebee. Para tal reinicie o Ubuntu ou então escreva o comando seguinte:

sudo restart bumblebeed

Nenhum comentário:

Postar um comentário