AMD Athlon 64 X2

6
AMD Athlon 64 X2 3.1 Introdução O Athlon 64 X2 é uma solução apresentada pela AMD para clientes de media digital assim como aqueles que correm várias aplicações de software em simultâneo. É um processador para ser utilizado em desktops e em portáteis. 3.2 Versões O Athlon 64 X2 é baseado na nova revisão do Athlon 64 (E). Utiliza os núcleos Toledo/Manchester (1 MB de Cache L2), que são baseados no Venice e San Diego (nomes dos cores utilizadosnos processadores Athlon 64 Single-Core) e que funcionam em soquet 939 o que permite compatibilidade com “motherboards” antigas. Existe também o núcleo “Windsor” para o socket AM2. Em todos estas versões foi utilizada uma tecnologia de fabrico de 90 nm ao contrário dos 65 nm utilizados pela intel nos seus Core 2 Duo. Estes processadores estão disponiveis nas seguintes velocidades: CPU ClockSpee d L2 CacheSize Athlon 64 X2 3800+ 2.0 512 KB Athlon 64 X2 4200+ 2.2 GHZ 512 KB Athlon 64 X2 4400+ 2.2 GHZ 1024 KB Athlon 64 X2 4600+ 2.4 GHZ 512 KB Athlon 64 X2 4800+ 2.4 GHZ 1024 KB 3.3 Microarquitectura

Transcript of AMD Athlon 64 X2

Page 1: AMD Athlon 64 X2

AMD Athlon 64 X2

3.1 IntroduçãoO Athlon 64 X2 é uma solução apresentada pela AMD para clientes de media digital assim como aqueles que correm várias aplicações de software em simultâneo. É um processador para ser utilizado em desktops e em portáteis.

3.2 VersõesO Athlon 64 X2 é baseado na nova revisão do Athlon 64 (E). Utiliza os núcleos Toledo/Manchester (1 MB de Cache L2), que são baseados no Venice e San Diego (nomes dos cores utilizadosnos processadores Athlon 64 Single-Core) e que funcionam em soquet 939 o que permite compatibilidade com “motherboards” antigas. Existe também o núcleo “Windsor” para o socket AM2. Em todos estas versões foi utilizada uma tecnologia de fabrico de 90 nm ao contrário dos 65 nm utilizados pela intel nos seus Core 2 Duo. Estes processadores estão disponiveis nas seguintes velocidades:

CPU ClockSpeed L2 CacheSize

Athlon 64 X2 3800+ 2.0 512 KB

Athlon 64 X2 4200+ 2.2 GHZ 512 KB

Athlon 64 X2 4400+ 2.2 GHZ 1024 KB

Athlon 64 X2 4600+ 2.4 GHZ 512 KB

Athlon 64 X2 4800+ 2.4 GHZ 1024 KB

3.3 Microarquitectura16 registos de inteiros de 64 bits e 16 registos de SSE/SSE2/SSE3 de 128 bits.

CPU ClockSpeed L2 CacheSizeAthlon 64 X2 3800+ 2.0 GHZ 512 KBAthlon 64 X2 4200+ 2.2 GHZ 512 KBAthlon 64 X2 4400+ 2.2 GHZ 1024 KBAthlon 64 X2 4600+ 2.4 GHZ 512 KBAthlon 64 X2 4800+ 2.4 GHZ 1024 KB

3.3.1 Sistema de memória

Page 2: AMD Athlon 64 X2

CachesCada núcleo possuí :• Cache L1 que se divide em cache de código de 64 KB e cache de dados 64 KB, ambas associativas de 2 vias• Cache L2 de 1MB ou 512 KB, associativa de 16 Vias

TLBsEsta arquitectura utiliza endereços físicos de 40 bits e endereços virtuais de 48 bits. A tradução de endereços fisicos em endereços virtuais é realizada através de uma hierarquia de tabelas com 4 níveis. O endereço de 48 bits divide-se em 12 bits de deslocamento para indexar uma págica de 4KB, os restantes 38 indexam as 4 tabelas.

3.3.2 Protocolo coerência de cache MOESIA consistência entre as várias caches existentes no dual core é assegurado segundo o protocolo “MOESI”. O protocolo consiste no seguinte:• Se o processador não encontrar o endereço pretendido na sua cache e em nenhuma cache de outro core, então vai buscar o endereço á memória e coloca-o na sua cache e marca-o como Exclusivo.• A primeira vez que o processador modificar o valor do endereço, marca-o como Modificado.• Se um processador precisar de um endereço e o encontrar na cache de outro core, ele copia o endereço para a sua cache e marca-a como Shared, e o outro endereço na outra cache é alterado de Modificado para Owner.• Qualquer core que precise de ler aquele endereço, irá sempre ler o endereço da cache onde esteja marcado como Owner.• Quando algum core necessita de actualizar um valor da cache que seja Shared, ele envia um problema de invalidação ás outras caches e marca o seu endereço na cache como Modificado e o estado nas outras caches passa a Inválido.

3.3.3 PipelineAs intruções x86 são instruções cisc, complexas e com tamanho muito variável, por isso existe a necessidade de organizar as instruções em instruções mais simples “macroOps”de tamanho idêntico e que possam realmente tirar partido do pipeline. Existe assim uma fase inicial de fetch, em que são realizados 2 fetchs de 16Bytes de informação da cache L1 para um buffer de 32Bytes. De seguida este buffer é analisado e após serem encontrados o inicio e o fim de cada instrução, estas são alinhadas e divididas de acordo com 2 grupos. Um grupo que comporta instruções mais simples em que apenas existe uma combinação de duas operações, um acesso á memória, uma instrução aritmética ou lógica e um grupo que

Page 3: AMD Athlon 64 X2

comporta insruções mais complexas. O grupo mais simples é despachado pelo descodificador directo (direct path) enquanto que o grupo mais complexo é despachadao por um hardware especifico denominado microcode (vector path).

Previsão de saltos Para uma eficiente previsão de saltos no processamento do piepeline, a arquitectura utiliza duas tabelas, histórico local e histórico global. O historico local encarrega-se de acompanhar o fio de execução de um salto individual de forma a prever se o salto vai ser realizado ou não. O historico global encarrega-se de o historico local de vários saltos, relacionando-os uns com os outros de maneira a prever se um salto individual vai ser tomado.

3.4 Inovações no AMD Athlon 64 X2:• “Controlador de memória DDR integrado”. A grande vantagem de ter um controlador de memória integrado no processador é tornar o sistema escalável, pois a adição de novos processadores não está dependente do facto de existir apenas um controlador de memória externo, permite também tempos de latência mais baixos pela menor distância entre o controlador e o processador.

• “Tecnologia HyperTransport” Permite ligar I/O e Memórias directamente ao processador e de forma independente, com tempos de latência muito baixos, eliminando assim estrangulamentos no acesso aos mesmos. (vai de até 6,4GB/s no acesso á memória e de até 24GB/s no total).

• “Direct Connect Atchitecture” Nome atribuido pela AMD para designar ao conjunto das duas tecnologias referidas anteriormente.

• “Cool'n'Quiet ™ “ Para alcançar um baixo consumo de energia a AMD desenvolveu esta tecnologia que permite variar a voltagem e o multiplicador de frequência do processador de maneira a só funciar na sua performance máxima quando existe essa necessidade. Esta tecnologia permite também um baixo ruído de funcionamento pois é possivel também controlar a velocidade de funcionamento do cooler do processador.

• “Enhanced Virus Protection (EVP)” Esta tecnologia permite melhorar a segurança do sistema, impedindo a acção de certos tipos de vírus e worms, que fazem ataques através de buffer overflow. Isto é conseguido através da insercão de um NX bit (no execution bit) que indica ao processador que aquela informação trata-se de informação de dados e não de uma instrução que possa ser executada. Disponibilizado pelo Windows XP service Pack 2.

4.1 Vantagens Intel Core 2 Duo

Page 4: AMD Athlon 64 X2

• Maior Cache L2 (2 a 4MB) partilhada e alocada dinamicamente.• Cache L2 é mais rápida (2.5x) que a do Athlon x2.• Dobro de bandwith para cache L1 que a do Athlon x2 (medido pelo ScienceMark).• Melhor algoritmo de pré-fetching.• Descodificação de 4 ou 5 (com Macro-fusion) instruções por ciclo vs. 3 instruções por ciclo do Athlon x2.• 2 previsões de saltos por ciclo contra 1 previsão de salto do Athlon x2.• Instruções 128-bit SSE2/3 não são separadas em duas de 64bits.• 4 cálculos floating point por ciclo vs. 3 cálculos floating point por ciclo do Athlon x2.• Vantagem na reordenação de Stores e Load com o algoritmo de memory disambiguation.• Compatibilidade com memórias futuras, o que não será possível ao Athlon x2 por usar IMC.

4.2 Vantagens AMD Athlon 62 X2• Controlador de memória integrado, reduzindo muito a latência no acesso á memoria, diminuindo bastante o caminho a percorrer pela informação.• HyperTransport que permite uma largura de banda maior e separação fisica entre comunicação do processador com a memória e com os I/O.• Aquitectura pensada para Duo Core desde o inicio, com a comunicação entre cores a realizar-se dentro do núcleo do processador ao contrário da Intel em que comunicam através do BUS externo que é partilhado com a memória e I/O.• A utilização do protocolo MOESI com mais um estado (Owner) que o utilizado pela intel e que permite que se um core alterar um valor na cache, ele próprio passa a fornecer esse dado a outros cores sem a necessidade dos outros irem aceder á memória.• 3 complex decoders têm melhor performance quando é necessário fazer fetch de 3 instruções complexas.• 3 AGU (adress generation unit) para cálculo de inteiros contra 2 AGU no Core 2 Duo, permite melhor desempenho em certo tipo de cálculos de inteiros, como por exemplo algoritmos de encriptação.

5 Testes práticosPara termos dados reais do funcionamento das arquitecturas recolhemos de várias fontes alguns benchmarks e verificámos que os resultados eram unânimos, apresentamo-los de seguida.

5.1 BenchMarksBenchmark Compressão de video Benchmark Jogos (Battlefield)(quanto mais pequena a barra, melhor) (Fotogramas por Segundo) Benchmark Office Benchmark Science Mark (Latência da memória em ns)

Page 5: AMD Athlon 64 X2

5.2 ConclusãoComo está presente nos testes O Intel Core 2 Duo obtêm melhor performance que AMD Athlon x2 em praticamente todas as ocasiões reais. Comparando o Intel Core 2 à arquitectura do AMD Athlon x2, concluímos que a eficiente reordenação de intruções no pipeline, maior número de instruções por ciclo em cada andar do pipeline e tamanho/velocidade da cache L2 são os motivos mais fortes para o seu excelente desempenho.