Nvidia dá o primeiro passo para drivers de GPU Linux de código aberto

Nvidia dá o primeiro passo para drivers de GPU Linux de código aberto

Depois de anos insinuando , a Nvidia anunciou ontem que fará parte de um driver de GPU Linux de código aberto , como a Intel e a AMD vêm fazendo há anos. Anteriormente, os usuários do Linux que queriam evitar o driver proprietário da Nvidia tinham que contar com software de engenharia reversa, como o projeto Nouveau , que funcionava melhor em hardware mais antigo e oferecia suporte incompleto para todos os recursos da GPU Nvidia, na melhor das hipóteses.

“Esta versão é um passo importante para melhorar a experiência da GPU NVIDIA no Linux, uma integração mais próxima com o sistema operacional e a capacidade de depurar, integrar e contribuir com os desenvolvedores”, diz uma postagem de blog atribuída a vários funcionários da Nvidia . “Para fornecedores de distribuição Linux, os módulos de código aberto facilitam o uso. Eles também melhoram a interface de usuário pronta para uso para assinatura e distribuição de driver de GPU NVIDIA. A Canonical e a SUSE podem empacotar imediatamente módulos de kernel aberto com as distribuições Ubuntu e SUSE Linux Enterprise.”

A Nvidia lança especificamente um driver de kernel de código aberto sob uma licença dupla MIT/GPL e atualmente não libera as partes de espaço do usuário do driver. Isso inclui drivers para OpenGL, Vulkan, OpenCL e CUDA, que ainda são de código fechado, bem como firmware para o GPU System Processor (GSP). A Nvidia diz que esses drivers “permanecerão fechados e serão publicados com binários pré-construídos”, então não parece que as versões de código aberto estejam planejadas para lançamento em breve.

A Nvidia ainda está atrás da Intel e da AMD quando se trata de drivers de GPU de código aberto – ambas as empresas lançam kernel de código aberto e drivers de espaço do usuário, bem como firmware de código fechado. Mas este é o primeiro passo para a paridade de código aberto para os pacotes de drivers Linux da Nvidia.

Os drivers de código aberto da Nvidia suportam apenas as GPUs baseadas em Turing da empresa e posteriores, incluindo as séries GeForce GTX 1600, RTX 2000 e 3000 e GPUs de estação de trabalho Quadro baseadas na mesma arquitetura. Os próprios drivers da empresa datam da arquitetura Kepler de 2012.

Os drivers de código aberto também ainda não serão integrados ao kernel do Linux, porque, de acordo com a Phoronix , a API, a ABI e a interface entre o driver do kernel e a interface do firmware GSP não estão finalizadas. Isso significa que tudo, desde o firmware até o driver do kernel e os drivers do espaço do usuário, deve ter uma versão para funcionar corretamente (a versão atual é R515.43.04). Depois que essas interfaces estiverem concluídas, o driver pode ser passado para o kernel e as várias versões de firmware, drivers de kernel e drivers de espaço do usuário devem ser capazes de interoperar.

A Nvidia diz que o suporte para suas GPUs de datacenter nos drivers atuais está “pronto para produção” nesta versão inicial, mas o suporte para GeForce, Quadro e outras GPUs de consumo está em “qualidade alfa” – não é o tipo de software que você precisa. rush para instalar se você não quiser chutar seus pneus em um sistema de teste ou contribuir com o código você mesmo.

Hector Martin, um dos desenvolvedores da distribuição Asahi Linux, criticou a Nvidia por mover muitos recursos para seu firmware de código fechado, que o driver de código aberto então chama. Martin chama o driver de código aberto de “uma vitória limpa do ponto de vista prático” porque um monte de código proprietário se encaixa mais facilmente em uma caixa de areia. “Mas nenhuma liberdade foi conquistada para as pessoas que se preocupam com isso”, escreve ele. “[Aproximadamente] a mesma quantidade de código fechado [como antes].”

Deixe um comentário

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