Os novos Cortex X4, A720 e A520 da Arm são núcleos apenas de 64 bits com grande foco na eficiência

Os novos núcleos da Arm como parte de sua Solução Total Compute para 2023 foram anunciados e são bastante interessantes.

Links Rápidos

  • Apenas 64 bits: "Missão cumprida"
  • Arm Cortex-X4: Ainda mais desempenho e melhor eficiência
  • Arm Cortex-A720: Equilibrando desempenho e consumo de energia
  • Arm Cortex A520: Duplicando a eficiência
  • DSU-120: Até 14 núcleos de qualidade computacional
  • Eficiência é o novo objetivo

Arm é a empresa que projeta praticamente todos os núcleos de CPU que acabam sendo usados ​​no seu smartphone Android, e todos os anos ela anuncia novas iterações que mais tarde chegarão a chipsets como o carro-chefe daquele ano, Snapdragon ou o próximo carro-chefe, MediaTek Dimensão. Este ano, está lançando um núcleo Cortex-X4 carro-chefe, um núcleo de desempenho Cortex-A720 e um núcleo de eficiência Cortex-A520. Esses núcleos formam a base dos novos designs compatíveis com Arm v9.2 da empresa e da Solução Total Compute da empresa para 2023, ou TCS23. Além disso, também vemos uma nova unidade compartilhada DynamIQ e uma GPU Immortalis-G720 atualizada. Maior ainda é uma transição completa para a computação de 64 bits, com nenhum desses núcleos suportando 32 bits.

Todos os três novos núcleos são sucessores microarquiteturais dos do ano passado e estão focados principalmente na introdução de IPC e ganhos de eficiência.

Apenas 64 bits: "Missão cumprida"

Uma das maiores mudanças na Total Compute Solution da Arm deste ano é a transição apenas para 64 bits. Embora o A510R1 do ano passado suportasse o modo de execução AArch32 de 32 bits, assim como o A710 lançado com TCS22 no ano passado, este ano, os núcleos da Arm são apenas AArch64. O tempo está passando para aplicativos de 32 bits no Android, principalmente desde O próprio Google determinou que todos os aplicativos fossem atualizados desde 2019 são carregados como binários de 64 bits.

Como diz Arm, a transição de 64 bits é considerada “missão cumprida”. A razão para isso é que o mercado chinês de aplicativos é o que reteve o resto da indústria na transição, mas a grande maioria dos aplicativos nas lojas de aplicativos chinesas agora são compatíveis com 64 bits, também.

O motivo do atraso foi a falta de um ecossistema de aplicativos homogeneizado, o que significa que diferentes lojas de aplicativos exigiam diferentes padrões de desenvolvedores. No entanto, como Arm trabalhou com várias lojas de aplicativos na China, juntamente com repetidos avisos de que uma mudança aconteceria, essas lojas de aplicativos têm incentivado os desenvolvedores a mudar também.

Parece que agora chegou a hora de essa transição acontecer em sua totalidade, e ainda levará mais alguns meses até vermos esses núcleos Arm em novos chipsets, de qualquer maneira.

Arm Cortex-X4: Ainda mais desempenho e melhor eficiência

A série de núcleos X da Arm divergiu de sua série A há alguns anos, com a filosofia de que é um núcleo poderoso que pode consumir um pouco mais de energia quando necessário. Normalmente, os fabricantes de chipsets incluem apenas um ou dois deles no máximo, pois consomem muita energia, mesmo apesar dos recursos que possuem.

Como você pode ver no gráfico acima, o Cortex-X4 é o núcleo Arm mais poderoso até agora, mas esses recursos de computação custam o consumo de energia. O Cortex-X4 é semelhante ao X3 do ano passado e, como diz Arm, pode até funcionar nas mesmas frequências do núcleo do ano passado e usar até 40% menos energia. É menos de 10% maior em tamanho físico e é o núcleo Cortex-X mais eficiente já construído.

Quanto à origem dessas melhorias de IPC, há uma série de melhorias de front-end e back-end no X4. Nessas melhorias de front-end, uma grande quantidade de trabalho foi colocada para reescrever e melhorar as previsões de filiais, já que previsões incorretas de filiais são caras em termos de desempenho. Arm também promete que um tamanho de cache L2 de 2 MB produz maior desempenho, não tanto em benchmarks, mas em uso no mundo real.

O novo núcleo Cortex-X4 aumenta o número de unidades lógicas aritméticas (ALUs) de 6 para 8, adiciona uma ramificação adicional unidade (para um total de 3), adiciona uma unidade Multiply-Accumulatator extra e canaliza ponto flutuante e raiz quadrada operações.

Quanto ao back-end, também há uma série de melhorias. A geração de endereços de armazenamento de carga passou de três para quatro instruções por ciclo, à medida que o canal de armazenamento de carga foi retirado e dividido. Há também um buffer de tradução duplicado em L1, juntamente com melhorias em conflitos bancários.

Tudo isso se junta para trazer um aumento de desempenho impressionante no Cortex-X4 da Arm. Resumindo, você pode esperar uma melhoria média de desempenho de 15% com o Cortex-X4. Na curva de potência e desempenho compartilhada pela Arm, o X4 está à frente do X3 tanto em desempenho quanto em consumo de energia. Em outras palavras, essa melhoria de desempenho de 15% resulta em um consumo de energia bastante significativo. Vale a pena mencionar também que não é exatamente uma comparação igual; o Cortex-X3 veio com 1 MB de cache L2 no ano passado, o que significa que se um fabricante mantiver o mesmo tamanho de cache L2 este ano, pode não haver necessariamente um aumento de desempenho de 15%.

Uma coisa é certa, porém, é que se você estiver executando o X4 na velocidade máxima, provavelmente será um grande bebedor de energia. Poderemos ver alguns OEMs este ano continuarem a fazer o que fizeram no ano passado e limitar muitos dos chipsets deste ano fora da caixa. Por exemplo, OnePlus e Oppo fazem isso, e com esses ganhos de eficiência de energia ao funcionar ao mesmo tempo pontos de desempenho como o X3, é provável que haja benefícios para essas empresas continuarem fazendo então. Podemos não ver esse aumento de desempenho de 15% em todas as áreas, mas podemos ver mais melhorias de eficiência para os chipsets do próximo ano.

Arm Cortex-A720: Equilibrando desempenho e consumo de energia

Embora a série de núcleos X da Arm normalmente funcione um pouco selvagem, a série de núcleos A normalmente visa equilibrar o consumo de energia com o desempenho. Com o Cortex-A720, a Arm promete um núcleo 20% mais eficiente, com maior desempenho na mesma potência do A715 do ano passado.

Quanto à origem das melhorias do A720 deste ano, a maioria delas está na parte frontal. Os pipelines foram encurtados com a remoção de um ciclo do mecanismo de previsão incorreta de ramificação, sendo que essa queda de ciclo único é responsável por um aumento de 1% nos benchmarks. Os benchmarks normalmente resultam no menor número de previsões erradas das agências, o que significa que isso provavelmente melhorará o desempenho geral no mundo real em uma quantidade mais significativa (mas em grande parte imensurável).

No núcleo fora de ordem, vemos uma série de melhorias estruturais que ajudam a melhorar o desempenho sem impactar a área ocupada pelo núcleo ou a sua eficiência. Para começar, assim como no X4, divisões de ponto flutuante e operações de raiz quadrada agora são pipelines. Há também transferências mais rápidas de números de ponto flutuante, NEON e SVE2 para números inteiros e outras melhorias gerais para acelerar o processamento.

Arm compartilhou o gráfico acima para ilustrar como o A720 se compara ao A715 do ano passado em desempenho e eficiência, onde um processo ISO e uma frequência ISO são usados ​​no SPECint_base2006. Os tamanhos de cache também permanecem os mesmos, então é uma comparação comparativa.

Em termos de consumo de energia, o A720 permanece bastante alinhado com o modelo do ano passado, embora obtenha um pouco mais de desempenho nos mesmos níveis de potência. Com o A720, assim como com o X4, Arm parece estar se concentrando mais em destacar como está melhorando desempenho fora das restrições de energia do ano passado, em vez de aumentar continuamente a potência que esses núcleos estão capaz de.

Arm Cortex A520: Duplicando a eficiência

Claro, quando se trata de núcleos Arm, nem tudo se trata de desempenho. Com a série X colocando tudo em poder computacional bruto e o A7xx equilibrando as necessidades computacionais e o consumo de energia, a série A5xx concentra-se puramente no processamento eficiente. É o núcleo Arm v9.2 de menor consumo de energia por área e se baseia na mesma arquitetura de núcleo mesclado que vimos introduzida com o A510.

O que esta arquitetura de núcleo mesclado significa é que alguns recursos podem ser compartilhados entre dois núcleos, onde dois núcleos podem ser agrupados em um "complexo". O cache L2, o buffer lookaside de tradução L2 e os caminhos de dados vetoriais são compartilhados dentro deste complexo. Para ser claro, isso não significa que tem para ser agrupado em dois núcleos, e um complexo de um núcleo pode ser montado para desempenho máximo. Na verdade, um dos layouts de núcleo TCS2023 da Arm que eles nos mostraram envolvia um único núcleo X4, cinco núcleos A720 e três núcleos A520, o que significa que pelo menos um núcleo A520 está isolado.

O A520 é um design que prioriza a eficiência e, como os outros núcleos, a Arm se concentrou principalmente em melhorar essa eficiência nos mesmos pontos de energia da última geração. Isso inclui melhorar as previsões de ramificação e, ao mesmo tempo, remover ou reduzir alguns recursos de desempenho. Como resultado, esse desempenho foi recuperado através de maior eficiência. Curiosamente também, Arm removeu a terceira ALU que estava no A510, economizando energia na emissão de lógica e encaminhamento de resultados.

Nos resultados do mundo real, parece que o A520 não é um salto tão grande em relação aos seus antecessores como o A720 e o X4. Muitas de suas capacidades em intervalos de energia mais baixos se sobrepõem ao A510 do gráfico acima, e é apenas nos escalões superiores de desempenho que vemos ganhos de eficiência. A divergência de desempenho e potência entre os dois núcleos é promissora, mas não está claro se veremos algum benefício real no mundo real ao comparar o A520 com o A510. Afinal, é difícil medir adequadamente as diferenças de desempenho e eficiência entre os dois no mundo real.

DSU-120: Até 14 núcleos de qualidade computacional

A Unidade Compartilhada DynamIQ, ou DSU, integra um ou mais núcleos com um sistema de memória L3, lógica de controle e interfaces externas para formar um cluster multicore. É essencialmente a estrutura do Arm que permite que todos esses núcleos se comuniquem entre si e compartilhem recursos, e como portanto, é uma peça bastante importante do quebra-cabeça para qualquer fabricante de chipset que deseja construir um chip com os designs principais da Arm.

Com base no DSU-110, a Arm fez uma série de melhorias no DSU-120 que servirão para beneficiar todo o chip no qual está incluído. Para começar, agora existem até 14 núcleos por cluster (era 12) e suporte para até 32 MB de cache L3. Também melhora muito a eficiência em diversas áreas importantes, inclusive no caso de falhas de cache, ao mesmo tempo que reduz o vazamento de energia.

De certa forma, o DSU da Arm é a espinha dorsal do TCS23, pois forma a base de como cada um desses núcleos interage entre si e compartilha dados. Quaisquer melhorias aqui beneficiarão todo o cluster, mas parece que a maioria das mudanças está relacionada ao consumo de energia e à eficiência.

Eficiência é o novo objetivo

A indústria parece estar mudando há algum tempo, mas a primeira impressão que tenho desses núcleos é que eficiência agora é o nome do jogo. Embora tenhamos sido informados sobre o quão mais rápido o núcleo X4 é e como é o núcleo mais rápido da empresa de todos os tempos, eles foram muito rápidos em notar as melhorias de eficiência ao operá-lo com o desempenho máximo do ano passado em vez de.

Em geral, cada ganho de desempenho foi sustentado pelo quão mais eficiente aquele componente também era e, mais ou menos, todas as mudanças da DSU foram em eficiência e vazamento de energia. O desempenho é importante, mas realmente parece que a indústria como um todo está tentando fazer com que os atuais níveis computacionais mais eficientes, em vez de buscar aumentos massivos de desempenho ano após ano.

Esperamos que esses núcleos formulem a base do MediaTek Dimensity 9400 e do Qualcomm Snapdragon 8 Gen 3, mas em que formação resta saber. Como mencionado anteriormente, Arm falou sobre o uso de um layout de núcleo 1+5+3 em seus próprios testes internos, mas isso não significa que é o que parceiros como MediaTek e Qualcomm estão procurando fazer.