Como a CPU evolui?

0

Isenção de responsabilidade: Não tenho certeza se o SE apropriado deve incluir isso, por isso, se o Superusuário estiver no lugar errado, peço desculpas. Eu percebo que esta é uma resposta muito ampla e provavelmente muito complexa, mas como é que a cada ano / dois anos a CPU e em geral os engenheiros de computação são capazes de melhorar o desempenho da referida peça? Hoje, os aumentos de desempenho são mais em eficiência, em vez de megahertz bruto, eu entendo isso, mas, mesmo assim, como é dito a eficiência aumentou? A principal coisa que me confunde é a rapidez com que novos projetos são feitos. Eu acho que é difícil encontrar ideias que aumentem a eficiência, então como é que as pessoas têm o suficiente para liberar novas gerações tão rápido quanto elas?

    
por Corsair64 31.07.2018 / 04:50

1 resposta

2

A resposta simples é que não vemos melhorias ano após ano, então a premissa não está correta.

Lembre-se de que a cadência de lançamento é por motivos comerciais, e não técnica: pode não haver melhorias significativas, mas os consumidores esperam uma versão anual, e é isso que eles fazem.

A resposta mais complexa é que existem muitos aspectos para o desempenho da CPU:

  • A microarquitetura, que afeta:
    • Com que rapidez é possível processar instruções específicas ( instruções por ciclo ), que variam de acordo com as instruções.
    • A rapidez com que ele pode processar seqüências de instruções (coisas como pipelining, previsão de ramificação, armazenamento em cache, etc.)
    • Quais instruções especializadas são suportadas (coisas como AES-NI, que agiliza enormemente a criptografia, SIMD [SSE, AVX, etc.], o que acelera enormemente as grandes tarefas de dados, como processamento de imagens, etc.)
    • Veja mais: link
  • A velocidade do clock, que afeta quantos ciclos você recebe por segundo. Isso praticamente parou, mas ainda estamos tentando encontrar eficiência para obter clocks mais altos sem fritar a CPU ou exigir muito resfriamento.
  • O número de núcleos, que afeta quantos fluxos de instruções independentes podem ser processados de uma só vez. Isto é, novamente, limitado pela eficiência. Veja também: link

O modelo antigo de tick-tock mostra como isso foi tratado no passado: Em um ano, você veria uma melhoria na microarquitetura e, na próxima, veria um "encolhimento de matriz", aumentando a eficiência usando um tamanho de processo menor. Enquanto o die shrink estava acontecendo na microarquitetura anterior, a próxima geração poderia ser trabalhada ao mesmo tempo. Mais recentemente, isso está diminuindo, porque estamos ficando sem melhorias para eliminar as frentes arquiteturais e de tamanho do processo.

Por exemplo, a recente geração do Intel Coffee Lake teve melhorias mínimas em Kaby Lake, que em si tinha melhorias mínimas sobre Skylake. A arquitetura em si permaneceu mais ou menos a mesma, com algumas pequenas melhorias nas instruções do SIMD e melhorias paralelas, como no controlador de memória. A mudança no título, se houver, seria uma velocidade de clock ligeiramente maior ... dos ganhos de eficiência no processo de fabricação. A mudança de manchete do Coffee Lake foi um aumento nas contagens básicas, provavelmente em grande parte para fins de marketing (competição com a AMD).

Raramente, também vemos saltos grandes , como no antigo Intel Core e nas recentes arquiteturas AMD Zen. Existem muitas equipes de projeto trabalhando em arquiteturas diferentes em paralelo, e ocasionalmente quando o avanço do primeiro está parado, outra arquitetura usando idéias diferentes pode "assumir o controle" (o Core substituiu o Netburst, o Zen substituiu a série do Excavator).

E, além do mundo da CPU de desktop, estamos presenciando um grande esforço por eficiência de energia para dispositivos alimentados por bateria, como laptops e tablets. Essa tem sido a principal característica de muitas novas arquiteturas: elas não são necessariamente mais rápidas, mas são mais eficientes , para que sua bateria dure mais tempo.

    
por 31.07.2018 / 05:12

Tags