FERRAMENTAS LINUX: A AMD envia os patches adicionando o suporte do "Znver3" ao GNU Binutils com novas instruções

segunda-feira, 19 de outubro de 2020

A AMD envia os patches adicionando o suporte do "Znver3" ao GNU Binutils com novas instruções

 


Confira !!


Um dos especialistas em compiladores da AMD esta semana enviou um patch conectando o suporte ao Zen 3 na importante coleção GNU Binutils para sistemas Linux.

O patch adiciona o Znver3 ao Binutils e foi enviado no início da semana. Infelizmente, os patches do GNU Compiler Collection (GCC) para o Znver3 ainda não foram postados pela AMD, mas esperamos que seja concluído com tempo suficiente para alcançar o lançamento do compilador GCC 11 no início do próximo ano.

Em qualquer caso, o patch Binutils público para Znver3 confirma que os próximos processadores AMD Zen 3 suportam uma série de novas instruções.

Em primeiro lugar, estão as instruções novas no Zen 3 não encontradas atualmente com CPUs Intel:

INVLPGB - Uma instrução para invalidar entradas TLB com transmissão.

TLBSYNC- Isso é usado como uma instrução de sincronização para invalidações TLB.

SNP - O conjunto de instruções SNP é composto pelas instruções PSMASH, PVALIDATE, RMPUPDATE e RMPADJUST. PSMASH expande uma entrada RMP de 2 MB em um conjunto correspondente de entradas RMP de página de 4 KB. PVALIDATE é usado para validar ou rescindir a validação da entrada RMP de uma página de convidado, RMPUPDATE grava uma nova entrada de RMP e RMPADJUST modifica as permissões de RMP para uma página de convidado.

As instruções não são particularmente empolgantes para a maioria dos usuários finais, mas são notáveis ​​pelo fato de que a Intel atualmente não expõe essas instruções onde, como nas gerações Zen anteriores, era principalmente um jogo de recuperação da AMD para empregar instruções já suportadas por CPUs Intel.

Ver o suporte INVLPGB / TLBSYNC / SNP, entretanto, não é muito surpreendente, já que o Manual de Referência de Programação da AMD observou essas instruções desde abril. Mas agora com o patch Binutils é a primeira confirmação oficial de que essas instruções são suportadas pelos processadores AMD Zen 3.

Mas, além das instruções originais, o alvo Znver3 também suporta algumas instruções adicionais que são suportadas por CPUs Intel:

VAES - Instruções Vector AES!

VPCLMULQDQ - Esta instrução é para realizar uma multiplicação sem transporte de duas palavras quádruplas . VPCLMULQDQ permite a versão codificada em VEX de 256 bits, mas parte do caminho para as extensões AVX-512 suportadas pela Intel.

INVPCID - O suporte PCID com Zen 3. Embora já tenhamos relatado que a AMD está indicando o trabalho com o suporte ao PCID e patches do AMD Linux para usar o PCID / INVPCID com convidados KVM .

OSPKE - O suporte ao PKE, embora não seja muito surpreendente, e relatado em abril para as chaves de proteção de memória com as CPUs AMD .




Isso é tudo até agora em termos de patches do Zen 3 para o conjunto de ferramentas de código aberto GNU (ou LLVM) trabalhando em torno do Zen 3 (znver3),


Fonte

Até a próxima !!

Nenhum comentário:

Postar um comentário