O Core i7 marca a introdução do Nahalem, baseado em uma arquitetura com muitas modificações em relação ao Penryn e aos processadores anteriores, incluindo um controlador de memória integrado e a tão esperada migração do FSB para um barramento serial ponto-a-ponto, duas melhorias que foram introduzidas anos antes pela AMD, às quais a Intel vinha resistindo até então.
Embora o Core i7 seja ainda um processador de nicho, a nova arquitetura servirá de base para os processadores Intel dos próximos anos, por isso é importante estudar um pouco sobre ele.
Começando com um pouco de contexto histórico, no início de 2006 a Intel estava em uma situação complicada. O Pentium D, baseado na ineficiente arquitetura NetBurst perdia para o Athlon X2 tanto em termos de desempenho quanto em termos de eficiência, gastando muita energia e rendendo pouco.
Na época, os processadores AMD eram superiores tanto nos desktops quanto nos servidores e a Intel perdia terreno rapidamente em ambas as frentes. Quando tudo parecia perdido, a Intel apresentou a arquitetura Core, que deu origem ao Core 2 Duo e aos demais processadores da linha atual. Para evitar cometer o mesmo erro que cometeu com a plataforma NetBurst, a Intel passou a investir massivamente em pesquisa e desenvolvimento, passando a desenvolver diversas novas arquiteturas em paralelo e a investir pesado no desenvolvimento de novas técnicas de fabricação e na modernização de suas fábricas.
O departamento de marketing se apressou em criar um termo que simboliza a nova fase, o “tick-tock” que passou a ser exaustivamente usado dentro do material publicitário da Intel. A idéia é simples: apresentar novas arquiteturas e novas técnicas de fabricação em anos alternados, onde um “tick” corresponde ao lançamento de uma nova arquitetura (como o Penryn e o Nehalem) enquanto o “tock” corresponde ao lançamento de uma nova técnica de fabricação (45 nanômetros ou 32 nanômetros, por exemplo), fechando o ciclo.
O plano é manter o público interessado, anunciando uma nova arquitetura, ou a migração para um novo processo de fabricação uma vez a cada ano e manter um ritmo rápido de evolução, que a AMD tenha dificuldades para acompanhar.
Dentro da idéia, a migração para a técnica de 0.065 mícron em 2005 foi um “tick”, o lançamento da plataforma Core, em 2006 foi um “tock” e o lançamento do Penryn em 2007, baseado na nova arquitetura de 0.045 mícron, foi um novo “tick”, que foi seguido pelo anúncio do Nahalem (pronuncia-se “nerreilem”), que representa uma nova arquitetura, ainda produzida usando a técnica de 45 nanômetros, mas com diversas mudanças arquiteturais em relação ao Penryn.
Assim como em todos os demais processadores da Intel, o “Nehalem” é apenas o nome-código da arquitetura. Ao chegar efetivamente às prateleiras, ele ganhou o nome de Intel Core i7.
Diferente do Yorkfield, usado nos processadores Core 2 Quad da série Q9000 (que era obtido através da combinação de dois processadores dual-core, ligados através do FSB), o Nehalem é um processador quad-core nativo, onde os 4 núcleos compartilham a mesma pastilha de silício:
Os 4 núcleos são compostos por nada menos que 731 milhões de transístores, que, mesmo com a técnica de produção de 45 nanômetros, ocupam uma área de 263 mm². Para ter uma idéia, isso corresponde a mais de 10 vezes o tamanho de um Atom 230, que possui apenas 25.9 mm².
Para acomodar os 4 núcleos, a Intel fez várias mudanças na arquitetura dos caches. Em vez de um grande cache L2 compartilhado, a Intel optou por utilizar uma arquitetura similar à utilizada pela AMD no Phenom, com um pequeno cache L2 (de 256 KB) para cada núcleo e generosos 8 MB de cache L3 compartilhados entre todos os núcleos. Dentro da arquitetura, o cache L3 assume a posição que no Core 2 Duo era executada pelo cache L2, servindo como um reservatório comum de dados.
A grande diferença entre o cache do Nahalem e do Phenom reside na forma como os dados são armazenados nos caches. Nos processadores AMD é usado um cache “exclusivo”, onde o cache L2 armazena dados diferentes do cache L1 e o L3 armazena dados diferentes dos do L2, maximizando o espaço de armazenamento. A Intel, por outro lado, utiliza um sistema “inclusivo” onde os cache L1 e L2 armazenam cópias de dados também armazenados no cache L3.
Embora reduza o volume total de dados que pode ser armazenado nos caches, o sistema da Intel oferece um pequeno ganho de desempenho, já que o processador não precisa checar os dados em cada um dos caches de forma independente.
Outro motivo para o uso do cache inclusivo são os novos estágios de baixo consumo (C3 e C6) suportados pelo processador, onde alguns (ou mesmo todos os núcleos) são completamente desligados, reduzindo o consumo a um patamar bastante baixo, mas em troca causando a perda dos dados armazenados nos cache L1 e L2. Como o cache L3 é independente dos 4 núcleos, ele permanece ativo, permitindo que os núcleos recarreguem os caches a partir do L3 ao acordarem, sem que o processador precise executar operações de checagem, nem que precise buscar os dados novamente na memória RAM.
É nesse ponto que os investimentos da Intel em novas técnicas de produção se pagam, já que com transístores menores, eles podem se dar ao luxo de fabricar processadores maiores e com mais cache, compensando a perda de espaço causada pelo uso do sistema exclusivo com um volume maior de cache.
O cache L1 continua sendo dividido em dois blocos (32 KB para dados e 32 KB para instruções), assim como em todos os processadores anteriores, mas houve um aumento na latência de acesso, que subiu de 3 para 4 ciclos em relação ao Penryn. A perda de desempenho é compensada pela redução na latência do cache L2, que caiu consideravelmente, de 15 para 11 ciclos.
Essa redução no tempo de acesso é uma das justificativas da Intel para o uso de um cache L2 tão pequeno. Com apenas 11 ciclos de acesso, ele funciona mais como um cache nível “um e meio”, que serve como um intermediário entre o cache L1 e o grande bloco de cache L3 compartilhado.
O cache L3 trabalha com uma latência de 39 ciclos, o que pode parecer bastante se comparado com a latência dos caches L1 e L2, mas é um pouco mais rápido do que o cache L3 usado no Phenom, que além de menor, trabalha com uma latência de 43 ciclos.
Outra mudança dramática é a inclusão de um controlador de memória integrado, assim como temos nos processadores AMD. O controlador de memória integrado reduz substancialmente o tempo de latência da memória, resultando em um ganho de desempenho considerável. Um dos grandes motivos o Athlon X2 ter se mantido competitivo em relação ao Core 2 Duo, apesar de possuir bem menos cache era justamente devido ao fato de utilizar o controlador dedicado, enquanto o Core 2 Duo dependia do trabalho do chipset.
A grosso modo, podemos dizer que o Athlon X2 precisa acessar a memória com mais freqüência (devido ao cache menor) mas que em compensação perde menos tempo a cada acesso devido ao controlador de memória integrado. A Intel bem que resistiu, mas acabou tendo que ceder à idéia.
Em vez de utilizar um controlador single-channel, ou dual-channel, a Intel optou por utilizar um controlador triple-channel, com suporte a memórias DDR3, operando a até 1.33 GT/s. Isso significa uma banda total de até 32 GB/s (ao utilizar 3 módulos). Para ter uma idéia, isso é 40 vezes mais do que tínhamos há 10 anos, quando utilizávamos módulos de memória SDR PC-100 em conjunto com o Pentium III.
Os três canais operam de forma independente, de forma que o processador por iniciar uma nova leitura em um dos módulos enquanto ainda espera os dados referentes a uma leitura anterior, realizada em outro módulo. Isso contribui para reduzir o tempo de latência do acesso à memória, que é, proporcionalmente, muito mais alto nos módulos DDR3.
Naturalmente, para tirar o melhor benefício do triple-channel, é necessário usar os módulos em trios. Ao usar um único módulo, apenas um dos canais será ativado e, ao usar quatro, o último módulo compartilhará o mesmo canal com o primeiro.
O problema com o controlador integrado é que ele aumenta substancialmente o número de contatos do processador, o que quebra completamente a compatibilidade com as placas soquete 775 atuais. A versão triple-channel do Nehalem utilizará um soquete LGA com nada menos do que 1366 contatos. O formato do processador também mudou, passando a ser retangular, assim como no antigo Pentium Pro:
Companhando as mudanças no processador, foi lançado também um novo chipset, o X58, que faz par com o ICH10, que concentra as interfaces de I/O:
Como o controlador de memória foi movido para dentro do processador, o X58 é um chipset relativamente simples, que serve basicamente como uma interface entre o barramento QPI do processador, os periféricos PCI Express e o chip ICH10 (acessado através de um barramento DMI), que concentra as outras interfaces. Os transístores referentes às linhas PCI Express ocupam a maior parte do die do chipset e é por isso que ele continua ocupando uma área relativamente grande.
Outra novidade é que o X58 é certificado pela nVidia para uso de SLI (ou seja, o primeiro pelo qual a Intel aceitou pagar a licença), o que permite o desenvolvimento de placas que sejam simultaneamente compatíveis com o SLI e com o CrossFireX. Como estamos falando do topo do mercado high-end aqui, onde se paga US$ 999 pelo processador e mais US$ 400 pela placa-mãe, o suporte a SLI acaba sendo um recurso importante.
A principal observação é que triple-channel está disponível apenas nos processadores da família i7, que são destinados a servidores e estações de trabalho de alto desempenho. Os processadores i5 destinados a desktop (baseados no core Lynnfield) possuirão apenas dois canais ativados, mudança que se reflete no soquete, que possui um número menor de contatos.
Esta postagem foi modificada pela última vez em 14/06/2009 23:30