A arquitetura ARM substituirá o x86 no PC?

A ARM arquitetura não é nada novo, mas está na boca de todos os entusiastas de hardware, graças ao fato de que Apple decidiu dar uma torção em seu equipamento e decidiu abandonar a arquitetura x86 para usar o ARM. Isso nos leva à pergunta inevitável: chegará um momento em que a arquitetura ARM poderá substitua o x86 atual no PC ? E mesmo que seja em laptops? Vamos ver isso.

Até agora, as arquiteturas ARM e x86 não competiam entre si, pois foram projetadas para finalidades diferentes. Agora as coisas mudam, com a Apple lançando seu Mac Mini com processadores ARM e com resultados bastante eficientes, então a eterna discussão ressurge novamente e com os mesmos exemplos de sempre; Por exemplo, enquanto um processador de desktop x86 “médio” consome entre 65 e 130 watts, um processador ARM pode fazer o mesmo com apenas 7 a 10 watts; portanto, se ele consome tão pouco, por que não substituir a arquitetura ARM x86?

A arquitetura ARM substituirá o x86

O ARM pode realmente fazer o mesmo que o x86?

A resposta curta para isso é que sim, o ARM pode fazer o mesmo, mas tem algumas nuances muito importantes que envolvem “de que maneira” e, especialmente, “em quanto tempo” (em termos de desempenho). O x86 usa a tecnologia CISC, com conjuntos de instruções mais amplos voltados para a solução de problemas mais complexos, enquanto o ARM usa RISC (que na verdade é R para ARM), muito mais simples.

CISC RISC
Instruções multi-ciclo Instruções de ciclo único
Carregamento e armazenamento incorporados em outras instruções Carregamento e armazenamento são instruções separadas
Arquitetura memória-memória Arquitetura registro-registro
Instruções longas, código com poucas linhas Instruções curtas, código com muitas linhas
Usa memória de firmware Implementar instruções diretamente no hardware
A versatilidade do conjunto de instruções é enfatizada Novas instruções são adicionadas apenas se forem usadas com frequência e não reduzem o desempenho das mais importantes
Reduz a dificuldade de implementação de compiladores Compiladores muito complexos
Elimine o microcódigo e a decodificação de instruções complexas

Assim, temos que os processadores x86 são orientados para desempenho e versatilidade, enquanto o ARM é mais orientado para o baixo consumo de energia e com opções limitadas. Um processador ARM pode fazer o mesmo que um x86, mas de maneiras diferentes, sempre muito mais elaboradas, e isso no final tem um grande impacto no desempenho em termos de tempo de execução.

Por outro lado, o ARM tem a vantagem de ser mais simples e por isso o tamanho dos núcleos é consideravelmente reduzido em relação aos seus rivais, sendo capazes de incorporar um maior número destes núcleos embora sejam mais lentos, conseguindo assim que as cargas de o trabalho pode ser dividido e otimizado.

Intel Foveros

No final das contas, o ARM pode fazer a mesma coisa que o x86, apenas de forma bem diferente. Agora, isso não significa que uma arquitetura possa ser substituída pela outra, pelo menos não tão facilmente e veremos por quê.

Hardware não faz sentido sem software

A prova viva desse impedimento é a Apple viva. Eles, antes de introduzirem seus processadores baseados em ARM, já gastaram muito tempo e esforço adaptando seu sistema operacional e, de fato, criaram um kit de desenvolvimento para que os desenvolvedores de software pudessem fazer o mesmo. Visto de outra forma, isso significa que o software foi projetado para uma arquitetura específica, ou seja, você não pode executar um programa projetado para x86 em um computador baseado em ARM.

Portanto, não se trata apenas de um fazer o trabalho do outro, é que todo o software deve ser adaptado ou portado, e isso é algo que nem todas as empresas podem fazer, nem todas as empresas podem pagar. Portanto, é algo que atualmente não tem viabilidade, nem mesmo a médio prazo; no longo prazo é algo que pode acontecer, mas não podemos esperar logo, longe disso.

Qual é o objetivo de ARM substituir o x86?

Em ambientes onde o consumo é um fator determinante e ao mesmo tempo em que se realizam tarefas muito específicas e repetitivas, é aqui que isso faz sentido. Por exemplo, imagine um servidor de banco de dados que possui um processador convencional baseado em x86 e outro hardware e que executa uma tarefa de gerenciamento de banco de dados e nada mais. Esse servidor precisa de um processador muito poderoso com alto consumo, mas poderia ser facilmente substituído por um ou mais processadores ARM com muitos núcleos menos potentes, mas que resultam em desempenho igual ou superior e com consumo muito menor.

Isso porque simplesmente usando um maior número de núcleos estão obtendo o mesmo resultado com um menor consumo, mas é porque a tarefa é muito específica e tanto o hardware quanto o software foram projetados para isso. Se tivermos que nos referir a um PC para uso diário, qualquer que seja sua função, então as coisas mudam porque nos veremos em situações em que este baixo consumo de ARM não vale a pena porque leva muito tempo para executar certas funções do que um processador x86. em um piscar de olhos, graças aos seus conjuntos de instruções.

O mesmo se aplica ao ecossistema de laptops, onde o consumo é certamente muito mais importante do que em um PC desktop simplesmente por causa da duração da bateria, mas onde a mesma versatilidade é necessária em um PC convencional.

Resumindo, é possível que o ARM acabe substituindo o x86, mas por enquanto apenas teoricamente, já que não é necessário e nem parece que os desenvolvedores o desejam (justamente porque não é necessário). Porém, é possível que em ambientes profissionais e principalmente servidores, as empresas comecem a desenvolver sob ARM para ganhar eficiência, já que no final isso significará uma boa redução de custos no longo prazo.