Arquitetura ARMv9 traz SVE2 e novos recursos de segurança

A maior revisão da ARM em sua arquitetura de conjunto de instruções em uma década está aqui - ARMv9 - com SVE2 integrado e outros recursos de segurança.

Hoje cedo, como parte do evento Vision Day, a ARM divulgou alguns detalhes sobre sua nova arquitetura ARMv9, que a empresa espera que seja usada em mais de 300 bilhões de chips nesta década.

A última grande revisão do ISA da ARM foi a v8, introduzida em outubro de 2011 com o conjunto de instruções AArch64 de 64 bits. No entanto, o ARM estendeu o ARMv8 ao longo dos anos com novos recursos, como Memory Tagging no ARMv8.5. Com o ARMv9, a empresa está continuando a usar o AArch64 como conjunto de instruções de base, mas o ampliou com novos recursos destinados a melhorar a segurança e desempenho.

De acordo com a ARM, aqui estão os principais novos recursos da arquitetura ARMv9-A:

  • SVE2: estendendo o benefício dos vetores escaláveis ​​para muitos outros casos de uso
  • Extensão de gerenciamento de domínio (RME): estendendo a Computação Confidencial nas plataformas Arm a todos os desenvolvedores.
  • BRBE: fornecendo informações de perfil, como Auto FDO
  • Extensão de rastreamento incorporada (ETE) e Extensão do buffer de rastreamento (TRBE): recursos de rastreamento aprimorados para Armv9
  • TME: suporte de memória transacional de hardware para a arquitetura Arm
Fonte: ARM. Através da: AnandTech.

Para um mergulho mais profundo nas mudanças de alto nível que vêm com o ARMv9, recomendo a leitura do relatório de Andrei Frumusanu em AnandTech, mas fornecerei um resumo das principais alterações das quais você deve estar ciente.

NEON sucedido por SVE2

NEON é uma extensão avançada de arquitetura de dados múltiplos de instrução única (SIMD). SIMD aqui se refere a uma única instrução operando em vários itens de dados em paralelo. Esses itens de dados são organizados em registradores que contêm vetores de bits.

Scalable Vector Extensions, ou SVE, é uma extensão do ARMv8.2 ou posterior que estende o processamento de vetores capacidade do AArch64 para atender aos requisitos de computação de tarefas de computação de alto desempenho (HPC) e máquinas aprendizado. É importante ressaltar que também permite comprimentos de registradores vetoriais entre 128 e 2.048 bits. Do ponto de vista de desenvolvimento de software, o benefício de um comprimento variável de registrador vetorial é que o código só precisa ser compilado uma vez para aproveitar ao máximo as futuras CPUs com registradores vetoriais mais longos. Da mesma forma, esse código também pode ser executado em CPUs com menos pipelines de execução SIMD, como aqueles em dispositivos IoT.

Como o SVE era mais voltado para cargas de trabalho de HPC e também não era um conjunto de instruções tão versátil quanto o NEON, a ARM introduziu o SVE2 no início de 2019 para resolver esses problemas. SVE2 adicionou novas instruções direcionadas a cargas de trabalho DSP que ainda dependem de NEON. Agora com o ARMv9, o SVE2 está sucedendo ao NEON como um recurso básico das CPUs ARMv9.

Melhorias no aprendizado de máquina

A ARM vê as cargas de trabalho de aprendizado de máquina se tornando cada vez mais populares na próxima década, e é por isso que revisões anteriores do ARMv8 introduziu novas instruções de multiplicação de matrizes. Esses serão recursos básicos das CPUs ARMv9, permitindo que cargas de trabalho de ML de escopo menor sejam executadas diretamente na CPU, em vez de aceleradores dedicados. Obviamente, executar cargas de trabalho de ML em aceleradores dedicados é desejável quando se prefere desempenho rápido ou eficiência energética, mas nem sempre é possível fazer isso em todos os hardwares.

Fonte: ARM. Através da: AnandTech.

Arquitetura de computação confidencial do ARMv9

Em um esforço para melhorar a segurança, o ARMv9 apresenta uma nova Arquitetura de Computação Confidencial (CCA). Como AnandTech explica, o CCA da ARM é uma mudança em relação à situação atual da pilha de software, em que aplicativos seguros executados em um dispositivo precisam confiar no sistema operacional e no hipervisor em que estão sendo executados. O modelo atual de segurança baseia-se no fato de que camadas de software mais privilegiadas podem monitorar o execução de camadas de software menos privilegiadas, o que pode ser problemático quando o sistema operacional ou o hipervisor são comprometido.

A forma como o CCA corrige esse problema é criando dinamicamente "reinos", que são ambientes de execução seguros e em contêineres que são opacos para o sistema operacional ou hipervisor. Os aplicativos dentro de “reinos” podem atestar sua confiabilidade a um “gerenciador de domínio”, código que tem uma fração do tamanho de um hipervisor, que agora é o único responsável pela alocação e agendamento de recursos. O benefício de usar “reinos” é que a cadeia de confiança é reduzida, permitindo segurança aplicativos para serem executados em qualquer dispositivo, independentemente do sistema operacional subjacente, que será transparente para problemas de segurança.

Fonte: ARM. Através da: AnandTech.

De acordo com AnandTech, a ARM não detalhou exatamente como os "reinos" são separados do sistema operacional e do hipervisor, mas eles especulamos que essa separação decorre de espaços de endereço apoiados por hardware que não podem interagir com uns aos outros.

Projetos futuros de CPU e GPU ARM

Embora não esteja diretamente relacionado ao ARMv9, o ARM compartilhou suas expectativas de desempenho projetadas para futuros designs de CPU baseados em v9. Nas próximas duas gerações de projetos de núcleo IP móvel, a ARM espera um ganho agregado de 30% no desempenho do IPC. Isso significa que o aumento geracional real no desempenho equivale a cerca de 14%, conforme AnandTech explica. É evidente que a taxa de melhoria abrandou um pouco em comparação com anos anteriores.

Vimos como as implementações de CPU por empresas como Qualcomm, Samsung e Huawei não atingem as projeções de desempenho esperadas de novos designs de núcleo ARM, um fato que a ARM aponta em um slide que detalha como o desempenho da CPU pode ser melhorado melhorando o caminho da memória, caches ou frequências.

Fonte: ARM. Através da: AnandTech.

Ainda assim, o ARMv9 promete trazer melhorias bem-vindas ao desempenho, segurança e aprendizado de máquina quando novas CPUs baseadas no ISA forem lançadas em dispositivos comerciais no início de 2022.

Quanto às futuras GPUs do Mali, a ARM revelou que está trabalhando em tecnologias como sombreamento de taxa variável (VRS) e traçado de raios. Esses recursos se tornaram populares entre hardware de GPU de PC de última geração e consoles de videogame de nona geração, como PlayStation 5 da Sony e Xbox Série X/S da Microsoft.

Fonte: ARM. Através da: AnandTech.

Créditos da imagem em destaque: ARM via AnandTech