Powered By Blogger

quinta-feira, 16 de fevereiro de 2012

Apresentando o QPI

Autor: Gustavo Pinheiro
Baseado no Artigo de Carlos E. Morimoto
http://www.hardware.com.br

Essa semana enquanto colocava os vídeos da Campus party 2012 um amigo, Cleandro Rocha me contou sobre um pc que tinha montado Placa Mãe GIGABYTE GA-EX58-UD4P, suporte para o mais novos processadores da Intel Core i7 com socket LGA1366 e QPI de 6.4 GT/s e com 20GB RAM.

Minha curiosidade ficou em saber o que é QPI? Até então não estava sabendo o que siginificava e resolvi pesquisar, felizmente achei um tutorial do Carlos E. Morimoto, um dos melhores na área de informática e vou passar aqui o meu entendimento baseado no tutorial dele.
O Core 2 Duo possui a capacidade de superar a maioria dos processadores AMD, devido ao fato de ser capaz de processar até 4 instruções ao mesmo tempo enquanto os AMDs processa apenas 3, segundo o Grande Morimoto, há muitos outros fatores a se considerar como:
Branch Prediction que é uma técnica empregada em alguns processadores com uma instrução chamada pré-busca para descobrir se um programa vai ou não executar um desvio, e para buscar o código executável no local adequado. Tem também o tamanho e velocidades dos caches, entre outros, mas o principal é que 4 intruções por ciclo de processamento nos trás uma grande vantagem.

Morimoto fala do processador Nehalem da Intel, que possui uma nova arquitetura onde controlador de memória vem integrado a ele, popularmente conhecido como Core i7, ele mantem a capacidade de processar 4 instruções por ciclo de processamento, mas possui uma série de melhorias em sua arquitetura que permitem uma melhor execução de dados e também uma maior quantidade de volume de dados, reduzindo o tempo de espera por dados em cache ou por uma operação de Branch Prediction, nos tranzendo uma maior efiência que o Core 2 Duo.

Fora a mudança nos caches e de colocarem o controlador de memória integrado, houve a substituição do FSB (front-side bus, ou barramento frontal) utilizado desde os primeiros processadores Intel, que liga o processador ao chipset, como você pode ver nesse diagrama da Intel a seguir:


O FSB é usado para a comunicação entre os núcleos do processador e a mémoria e também para a comunicação entre os 2 ou 4 núcleos do processador, mas acabada diminuindo o acesso a memória, prejudicando o desemprenho do sistema. O problema era pior ao usar vários processadores SMP, Morimoto cita o exemplo das placas para servidores ou na plataforma Skultrail.
Até o Core 2 Duo a Intel remdiava o problema na força bruta, colocando mais cache L2 nos processadores. Com o QPI, a Intel foi direto a raiz do problema, com links independentes que operam a 4.8 ou 6.4 GT/s (a sigla "GT/s" indica o volume de transações por segundo, diferente de "GHz", que indica o clock), com a transmissão de 16 bits de dados em cada direção por ciclo, cada barramento resulta em 9.6 ou 12.8 GB/s em cada direção, totalizando até 25.6 GB/s por linha de dados.
A memória passa a ser acessada diretamente pelo controlador que está no processador, e o link de cotrole de memória da placa mãe fica totamente disponível para o tráfego de I/O (sistema de Input e Output ou seja Entrada e Saída).
Ao utilizar dois processadores, cada processador passa a se comunicar com o chipset através de uma linha independente e uma terceira linha de dados é implantada para coordenar a comunicação entre os dois:



Ao usar 4 processadores (possibilidade que deverá ser bem explorada no caso dos servidores de alto desempenho) são incluídos barramentos adicionais, que fazem com que cada processador tenha acesso direto a todos os demais:


Segundo Morimoto, pra quem acompanhou a evolução dos processadores da AMD nos útimos anos, vai notar a semelhança entre o QPI e o HyperTransport, usado nos processadores AMD. Obviamente, não se trata de mera coincidência. A Intel estudore os pontos fortes da solução da AMD e acbou chegando a uma solução a adaptada à sua arquitetura. Como dizem, a cópia é a forma mais sincera de elogio.
Referências

http://www.clubedohardware.com.br/artigos/1471

2 comentários: