FERRAMENTAS LINUX: O Asahi Linux pode continuar escrevendo o driver Apple Silicon GPU em Rust

sexta-feira, 12 de agosto de 2022

O Asahi Linux pode continuar escrevendo o driver Apple Silicon GPU em Rust

 


Confira !!

Quando se trata do suporte ao Apple M1 e M2 no Linux, um dos maiores obstáculos para o uso diário adequado para usuários finais é a atual falta de aceleração de GPU. A engenharia reversa está acontecendo para o processador gráfico Apple Silicon, os primeiros experimentos sendo realizados no ambiente m1n1 do macOS e Asahi, e o próximo passo será começar a escrever um driver de kernel Direct Rendering Manager (DRM). Para alguma surpresa, a viabilidade de escrever este driver de GPU do kernel DRM na linguagem de programação Rust está sendo explorada.

O proeminente colaborador do Asahi Linux, Asahi Lina, expressou a possibilidade de escrever seu novo driver de GPU do kernel para o Apple AGX dentro da linguagem de programação Rust.

Asahi Lina explicou hoje na lista de discussão:

Essas GPUs executam firmware e têm estruturas de dados de memória compartilhada bastante complexas que precisam ser gerenciadas pelo host, então tenho me inclinado para o Rust por sua segurança, melhor metaprogramação e expressividade geral. Eu tenho um driver de protótipo escrito em Python (executando no espaço do usuário de um host remoto, uma longa história) e ter uma linguagem de nível superior tem sido muito útil na engenharia reversa da GPU e na prototipagem de ideias diferentes de como o driver deve funcionar.

Percebo que são os primeiros dias do Rust no Linux e este é um desafio ambicioso, mas estou disposto a aprender e o driver levará algum tempo para se estabilizar a ponto de ser upstream de qualquer maneira (em particular o UAPI), então escrevendo isso em Rust parece menos arriscado neste momento do que costumava ser, já que parece que Rust será mesclado nos próximos ciclos do kernel, no máximo.

Este seria o primeiro driver de GPU do kernel escrito na linguagem de programação Rust. Dado que o código do driver real ainda não foi escrito para o driver Rust, resta saber se o driver inteiro seria implementado no Rust ou apenas as partes interagindo com o firmware binário.

Mais brainstorming sobre este driver de kernel Linux da Apple GPU potencialmente escrito na linguagem de programação Rust pode ser encontrado na lista de discussão rust-for-linux .







Fonte

Até a próxima !!

Nenhum comentário:

Postar um comentário