Microsoft ajuda no desenvolvimento de drivers da AMD para Linux

Escrito por
Claylson Martins
Jornalista com pós graduações em Economia, Jornalismo Digital e Radiodifusão. Nas horas não muito vagas, professor, fotógrafo, apaixonado por rádio e natureza.

A manchete acima seria impensável há poucos anos. Porém, esta é a mais pura realidade e a Microsoft implementa a ajuda no desenvolvimento de drivers da AMD para Linux. Normalmente, não é o que se espera da empresa. Sendo assim, os engenheiros da Microsoft enviaram patches para revisão habilitando o suporte a hot-plugging de GPU AMD com o driver de kernel Linux Radeon “AMDGPU”. Os pesquisadores da Microsoft estão trabalhando na “tecnologia de desagregação de GPU” e isso os levou a trabalhar no suporte de hot-plug AMDGPU para Linux.

Shuotao Xu, da Microsoft, comentou:

Acreditamos que o suporte de dispositivos hot-plug de GPU pode abrir portas para muitos aplicativos avançados em data center nos próximos anos, e gostaríamos de ter alguns revisores sobre este PR para que possamos continuar com mais detalhes técnicos. discussões sobre esse recurso.

image 9

Microsoft ajuda no desenvolvimento de drivers da AMD para Linux

No escopo do data center, essa funcionalidade pode ser importante para a Microsoft com o Azure para adicionar/remover aceleradores AMD em máquinas virtuais convidadas. Separadamente, nos últimos tempos, a AMD trabalhou para melhorar a desconexão do dispositivo hot GPU AMD com seu driver gráfico com o caso de uso existente para GPUs externas.

Eles postaram seu patch hot-plug de GPU na lista de discussão e no GitHub para revisão e upstreaming.

Patch da AMD troca MWAIT pelo HALT com melhoria de ~ 21% no desempenho

A AMD enviou um patch para que o kernel Linux usasse a instrução MWAIT em vez de HALT para quando o sistema está não está usando o driver ocioso da CPU para estados C sendo desabilitados pelo BIOS ou o driver não faz parte da compilação do kernel. Por sua vez, isso pode levar a uma melhoria de cerca de 21% na latência de saída nos sistemas afetados.

A instrução Monitor Wait “MWAIT” pode ser usada para fins de gerenciamento de energia para indicar que o processador pode entrar em um estado C de destino especificado enquanto aguarda a conclusão de um evento ou de uma operação de armazenamento monitorada. O uso do MWAIT deve ser mais eficiente do que a instrução HALT.

image 7

Intel Core 2 e posteriores já preferiram a instrução MWAIT sobre HALT para entrar no estado C1 e esse tem sido o comportamento no kernel do Linux. As CPUs da AMD continuam usando HALT neste caminho de código para casos como não usar o driver ocioso da CPU (por estar desabilitado ou não fazer parte da compilação do kernel) ou quando os C-states são desabilitados pelo BIOS do sistema, portanto, reconhecidamente um nicho.

O patch proposto esta semana pela AMD agora passa a usar o MWAIT para todos os processadores AMD Zen para Zen 1 e mais recente, além de Hygon Dhyana. No AMD Zen 3 (e resultados semelhantes para o Zen mais antigo também), a latência de saída foi cerca de 21% menor usando MWAIT em vez de HALT. 

A maioria dos usuários usará o driver ocioso da CPU e, portanto, não será afetado por este patch, mas para aqueles que não estão, essa mudança pode ser benéfica. A alta latência com HALT aparentemente surgiu no teste/uso do mundo real ao explorar a perda de pacotes em um programa de rede não especificado como parte das “observações de desempenho do cliente”.

image 8

Esta mudança AMD está atualmente sob revisão na lista de discussão do kernel.

Compartilhe este artigo