FERRAMENTAS LINUX: Mais progresso é obtido com a compreensão da GPU M1 da Apple, trabalhando em direção a um driver aberto

segunda-feira, 19 de abril de 2021

Mais progresso é obtido com a compreensão da GPU M1 da Apple, trabalhando em direção a um driver aberto

 


Confira !!

Alyssa Rosenzweig, conhecida por seu trabalho no driver de código aberto Panfrost para gráficos Arm Mali, publicou as últimas descobertas sobre o processador gráfico Apple M1. Na verdade, conhecimento suficiente para obter uma renderização de cubo giratório sombreado no Apple M1 usando uma demonstração simples até agora, enquanto o suporte ao driver de código aberto ainda é o objetivo.

Alyssa e outros passaram muito tempo este ano trabalhando em engenharia reversa e entendendo melhor os gráficos Apple M1 encontrados com este primeiro Apple Silicon SoC. Recentemente, tem havido muito trabalho na área de compilação de shaders com o objetivo de fazer um compilador baseado em NIR funcionar para o driver Mesa 3D ainda a ser escrito.

Investigar o processador gráfico Apple M1 revelou que a empresa realmente cuidou de seu design em torno dos requisitos da API Metal e não do OpenGL, Vulkan ou outros padrões da indústria. Alyssa observou na postagem de hoje, "Para todos os recursos de hardware visíveis, é igualmente importante considerar quais recursos de hardware estão ausentes. Curiosamente, a GPU carece de algum hardware gráfico de função fixa onipresente entre os concorrentes. Por exemplo, eu não encontrei hardware para ler atributos de vértice ou objetos de buffer uniforme. As especificações OpenGL e Vulkan pressupõem hardware dedicado para cada um, então qual é o truque? Simplificando - a Apple não precisa se preocupar com o desempenho do Vulkan ou OpenGL. Sua única API com suporte adequado é seu próprio Metal, que eles podem moldar para se ajustar ao hardware, em vez de contorcer o hardware para combinar com a API. De fato, Metal diminui a ênfase nos atributos de vértice e buffers uniformes, favorecendo buffers constantes gerais, um design focado em computação."

Pelo menos com a funcionalidade não fornecida pela GPU Apple M1, é menos engenharia reversa e mais do que escrever caminhos de software que, felizmente, não são muito caros.

Quanto ao estado atual da GPU Apple M1, pesquise e trabalhe para criar um sistema aberto driver de origem, " No momento, o compilador em andamento suporta a maioria das instruções aritméticas e de entrada / saída encontradas no OpenGL ES 2.0, com um otimizador simples e pacote de instruções nativas. O suporte para controle de fluxo, texturas, programação e alocação de registros virá mais adiante, à medida que trabalhamos em direção a um driver real. "

Mais detalhes em Rosenzweig.io .





Fonte

Até a próxima !1

Nenhum comentário:

Postar um comentário