MULTICORE. Sávio R. A. dos Santos Rosa IC - UNICAMP RA 025144. Bruno Cardoso IC - UNICAMP RA 023241. Tiago M. Fernandes IC - UNICAMP RA 025313



Documentos relacionados
Hardware Avançado. Laércio Vasconcelos Rio Branco, mar/2007

Técnicas de Manutenção de Computadores

Técnico em Informática - Instalação e Manutenção de Computadores PROCESSADORES

CENTRAL PRCESSING UNIT

Curso de Instalação e Gestão de Redes Informáticas

Memória cache. Prof. Francisco Adelton

Processadores Tecnologia de Multiprocessamento VS + Núcleos. Claudio Damasceno prof.claudiodamasceno@hotmail.com

A história do Processadores O que é o processador Características dos Processadores Vários tipos de Processadores

Memória RAM. A memória RAM evolui constantemente. Qual a diferença entre elas? No clock (velocidade de comunicação com o processador)

Hardware de Computadores

29/3/2011. Primeira unidade de execução (pipe U): unidade de processamento completa, capaz de processar qualquer instrução;

Bits internos e bits externos. Barramentos. Processadores Atuais. Conceitos Básicos Microprocessadores. Sumário. Introdução.

PROCESSADORES. Introdução 25/04/2012. Professor Marlon Marcon


Aula 06. Memórias RAM

Anatomia de uma Placa Mãe

Manutenção de Computadores Montagem de microcomputadores: Entendendo melhor os processadores. Professor: Francisco Ary

Fundamentos de Hardware

Introdução. Uso do disco Vantagens Desvantagens Baixo custo, facilidade de manutenção do software e do hardware, simetria e flexibilidade

Visão geral das placas-mãe

Computador E/S, Memória, Barramento do sistema e CPU Onde a CPU Registradores, ULA, Interconexão interna da CPU e Unidade de controle.

Arquitetura de processadores: RISC e CISC

BACHARELADO EM SISTEMAS DE INFORMAÇÃO EaD UAB/UFSCar Sistemas de Informação - prof. Dr. Hélio Crestana Guardia

Processadores. Guilherme Pontes

IDENTIFICAÇÃO MANUTENÇÃO

Comparativo de desempenho do Pervasive PSQL v11

Hardware - Microprocessador

AULA: Introdução à informática Computador Digital


Placa-Mãe. Christian César de Azevedo

O quê um Processador e qual a sua função?

Processadores clock, bits, memória cachê e múltiplos núcleos

Alguma das vantagens e desvantagens dos computadores ópticos é apresenta a seguir.

Evolução das CPUs: Dual e Quad Core

Curso de Instalação e Gestão de Redes Informáticas

PROCESSADOR. Montagem e Manutenção de Microcomputadores (MMM).

Processadores de Núcleo Duplo

Soquetes para o processador

INTRODUÇÃO BARRAMENTO PCI EXPRESS.

Montagem e Manutenção. Luís Guilherme A. Pontes

ARQUITETURA DE COMPUTADORES

Fundamentos de Hardware. 1. Placa Mãe

Abstrações e Tecnologias Computacionais. Professor: André Luis Meneses Silva /msn: andreluis.ms@gmail.com Página: orgearq20101.wordpress.

Trabalho sobre No-breaks

LEVANTAMENTO DE HARDWARES PARA O DESENVOLVIMENTO DE SOFTWARE. Graphics

Motherboard Significado

Sumário. Organização de Computadores Módulo 3. Primeira Geração Válvulas ( ) Primeira Geração Válvulas ( )

Tecnologia PCI express. Introdução. Tecnologia PCI Express

Contil Informática. Curso Técnico em Informática Processadores Core

PROCESSADORES HT, DUAL CORE E TURION 64

Unidade 13: Paralelismo:

Barramento. Barramentos. Barramento. Barramento

Top Guia In.Fra: Perguntas para fazer ao seu fornecedor de CFTV

Conceitos e Evolução Capítulos 1 e 2

ORGANIZAÇÃO DE COMPUTADORES MÓDULO 1

Figura 1 - Memória 1. OBJETIVO. Conhecer os principais tipos de memórias entendendo suas funcionalidades e características.

ARQUITETURA DE COMPUTADORES

Sumário. Velocidade do processador. Velocidade do processador. Velocidade do processador. Velocidade do processador. Manutenção de Hardware.

Sumário. Manutenção de Hardware. Clock

ARQUITETURA DE COMPUTADORES Prof. Ricardo Rodrigues Barcelar

Arquitetura de Computadores II

Hardware. Objetivos da aula. Fornecer exemplos de processadores Intel. Esclarecer as diferenças e as tecnologias embutidas nos processadores Intel.

Introdução a Ciência da Computação Unidade V Hardware - Arquitetura de um Sistema de Computação - Processador. Processador. Introdução.

Introdução à estrutura e funcionamento de um Sistema Informático

INSTITUTO DE EMPREGO E FORMAÇÃO PROFISSIONAL, I.P.

Todos os microprocessadores hoje disponíveis em micros compatíveis com PC utilizam o funcionamento do como ponto de partida.

O processador é um dos elementos componentes do computador moderno, sendo responsável pelo gerenciamento de todo o computador.

REPLICACÃO DE BASE DE DADOS

Symmetric Multiprocessing Simultaneous Multithreading Paralelismo ao nível dos dados

Comparação entre Alguns Processadores

CAPÍTULO 4 Interface USB

Comunicação Fim-a-Fim a Alta Vede em Redes Gigabit

Barramentos e Chipsets

A Intel e a AMD são os mais conhecidos fabricantes de processadores ambos tiveram a sua evolução em termos de fabrico de processadores

Barramento - Significado

Prof. Esp. Lucas Cruz


Curso de Instalação e Gestão de Redes Informáticas

CPU Unidade Central de Processamento. História e progresso

Introdução a Organização de Computadores Aula 4

Estrutura de um Computador

Este curso destina-se a uso pessoal pelo cliente que o adquiriu na Laércio Vasconcelos Computação. Ele não pode ser duplicado para ser repassado a

Arquitetura de Von Neumann e os Computadores Modernos

REDES DE COMPUTADORES HISTÓRICO E CONCEITOS

Barramentos 17/10/2011. Redes de Computadores. Arquitetura de Computadores FACULDADE PITÁGORAS DE TECNOLOGIA FACULDADE PITÁGORAS DE TECNOLOGIA.

CPU - Significado CPU. Central Processing Unit. Unidade Central de Processamento

Capítulo 1 Introdução

Conceitos Básicos de Rede. Um manual para empresas com até 75 computadores

Imagem retirada de documentações de treinamentos oficiais INTEL

Gerenciamento de Recursos para Grades Computacionais Node Control Center. Proposta para o Trabalho de Formatura Supervisionado

Capítulo 2. AMD K6, K6-2, K6-III Super 7 Cyrix MII / 6x86 / 6x86MX Super 7 ou Socket 7 AMD K5, Pentium, Pentium MMX Socket 7

Sistemas Operacionais. Prof. André Y. Kusumoto

Cinco restrições de desenvolvimento/teste que afetam a velocidade, o custo e a qualidade dos seus aplicativos

Universidade Tuiuti do Paraná UTP Faculdade de Ciências Exatas - FACET

FACULDADE PITÁGORAS PRONATEC

Turno/Horário Noturno PROFESSOR : Salomão Dantas Soares AULA Apostila nº

Sistemas Operacionais

Curso EFA Técnico/a de Informática - Sistemas. Óbidos

Um retrospecto da aula passada... Um retrospecto da aula passada... Principais Aspectos de Sistemas Operacionais. Gerência de E/S

Transcrição:

Bruno Cardoso IC - UNICAMP RA 023241 bruno.cardoso@gmail.com MULTICORE Sávio R. A. dos Santos Rosa IC - UNICAMP RA 025144 savio18@gmail.com Tiago M. Fernandes IC - UNICAMP RA 025313 fernandes.tiago@gmail.com 1 INTRODUÇÃO Processadores Multicore representam uma grande revolução na tecnologia computacional. São capazes de prover maior capacidade de processamento com um custo/benefício melhor do que processadores Single-Core, e suas vantagens não param por aqui. Ao longo deste texto são explicadas as principais características da arquitetura Multicore, a motivação que levou a seu desenvolvimento, suas vantagens e princípios de funcionamento. Posteriormente enfatizamos implementações específicas desta tecnologia realizadas por duas grandes empresas concorrentes no mercado: AMD e Intel. Assim pode-se exemplificar com maior riqueza as propriedades desta arquitetura. 2 OS LIMITES DA TECNOLOGIA SINGLE-CORE No atual mundo digital, as demandas das complexas simulações 3D, arquivos de streaming media, níveis adicionais de segurança, interfaces do usuário mais sofisticadas, bancos de dados maiores e mais usuários on-line estão sempre pedindo por mais poder de processamento. A solução até agora aplicada foi aumentar a freqüência da operação dos processadores, assim aumentando sua capacidade de processamento. Isto exige que a fabricação de transistores seja feita em camadas de silício cada vez menos espessas. Entretanto, segundo o trabalho "Limits to Binary Logic Switch Scaling--A Gedanken Model" publicado por quatro pesquisadores da Intel no Proceedings of the IEEE em novembro de 2003, este método de fabricação tem seus dias contados, o que obriga a busca de uma tecnologia alternativa para a fabricação de circuitos integrados e, com eles, microprocessadores. A figura 1 mostra protótipos de transistores da Intel. [10] No canto superior esquerdo da figura 1, corresponde à tecnologia atual: camada de silício de 90 nm e porta de 50 nm. Os seguintes são protótipos de transistores que, seguindo uma linha crescente de tempo para a direita, devem ser fabricados no futuro pela Intel. Porém, após o último dos protótipos, previsto por volta de 2011, a situação fica problemática. Quanto menor a largura da porta, mais próximas ficarão as regiões da fonte e dreno do transistor. Os técnicos afirmam que, quando a largura da porta chegar a cinco nm, fonte e dreno ficarão separadas por um trecho de silício tão pequeno que não conseguirá isolá-los completamente, gerando uma probabilidade de 50% de que a corrente flua mesmo quando não houver tensão aplicada à porta (este fenômeno denomina-se tunelamento). Quando isso ocorre o transistor deixa de ser confiável como dispositivo de processamento de dados. [10] Figura 1. Protótipos de processadores Intel. Além disso, temos um outro problema ainda mais grave: a dissipação de energia. Há 40 anos atrás, Gordon Moore propôs empiricamente que com o ritmo de evolução da tecnologia observado, seria possível duplicar o número de transistores numa mesma área de silício aproximadamente a cada 18 meses. Por muito tempo esta lei inspirou e promoveu o progresso do mercado de tecnologia, mas começa-se a perceber que estamos cada vez mais próximos de um limite máximo para esta técnica. Quanto menores são os transistores em um circuito integrado, maior sua densidade, ou seu número por unidade de área. O acúmulo de um número muito grande de transistores em uma área pequena concentra tremendamente a produção de calor devido à dissipação de energia pela corrente elétrica que circula nos transistores. Se essa energia não for rapidamente removida do circuito e transferida para o ambiente, o chip atingirá temperaturas tão elevadas que, literalmente, derreterá [10]. A figura 2, a seguir, mostra uma extrapolação da evolução da energia dissipada por processadores. Segundo Paolo Gargine, Diretor de Tecnologia da Intel, mesmo que se conseguisse contornar o limite da largura da porta, não haveria como remover dele o calor com a mesma rapidez com que seria produzido. O chip se autodestruiria. Além dessas, há diversas outras limitações impostas pela arquitetura de núcleo único. Entre elas, temos que a estreita banda de dados, aliada à grande diferença entre a velocidade do processador e a da memória, faz com que 75% do tempo da cpu, em média, seja gasto esperando por resultados dos acessos à memória. [7]

Figura 2. Gráfico da dissipação de energia por processadores. Somando todas as implicações, chega-se à conclusão de que é necessário o desenvolvimento de uma nova opção. Uma boa alternativa capaz de contornar a maioria dos problemas que estamos enfrentando é a tecnologia Multicore. 3 A TECNOLOGIA MULTICORE 3.1 Descrição Em poucas palavras, a tecnologia Multicore (múltiplos núcleos) consiste em colocar duas ou mais unidades de execução (cores) no interior de um único 'pacote de processador' (um único chip). O sistema operacional trata esses núcleos como se cada um fosse um processador diferente, com seus próprios recursos de execução. Na maioria dos casos, cada unidade possue seu próprio cache e pode processar várias instruções simultaneamente. Adicionar novos núcleos de processamento a um processador possibilita que as instruções das aplicações sejam executadas em paralelo em vez de serialmente, como ocorre em um núcleo único. Adicionar um novo núcleo assemelha-se a abrir uma nova pista em uma estrada para aliviar o trânsito: os carros não precisam dirigir mais rápido para chegarem mais cedo ao seu destino, eles apenas não são atrasados tanto pelo gargalo de poucas pistas e congestionamentos. [5] Os processadores de múltiplos núcleos permitem trabalhar em um ambiente multitarefa. Em sistemas de um só núcleo, as funções de multitarefa podem ultrapassar a capacidade da CPU, o que resulta em queda no desempenho enquanto as operações aguardam serem processadas. Em sistemas de múltiplos núcleos, como cada núcleo tem seu próprio cache, o sistema operacional dispõe de recursos suficientes para lidar com o processamento intensivo de tarefas executadas em paralelo. Portanto, melhora-se a eficiência do sistema e o desempenho dos aplicativos em computadores que executam vários aplicativos simultaneamente. A figura 3 exemplifica o gargalo (bottleneck) que surge quando vários aplicativos são executados em um único core. Já a figura 4 mostra o desaparecimento do gargalo quando adicionamos uma nova unidade de processamento [4]. A presença de vários núcleos é especialmente eficaz quando uma das aplicações deve ficar sendo executada continuamente (ou quase), como no caso do system scan da figura, ou de um programa de antivírus. Figura 3. Gargalo presente na arquitetura Single-Core. Figura 4. Ausência do gargalo na arquitetura Multicore. Podemos citar como sendo as principais vantagens da arquitetura Multicore [7]: Maior eficácia (troughput) do sistema e desempenho aprimorado de aplicativos em computadores executando vários aplicativos simultaneamente Desempenho aprimorado para aplicativos multithreaded Compatibilidade para mais usuários ou tarefas em aplicativos com muitas transações Desempenho superior em aplicativos que utilizam processamento de forma intensiva

Economia no preço de licenciamento de softwares proprietários, passando a ter um maior poder de processamento sem necessitar de uma nova máquina Redução da dissipação térmica quando comparado ao Single-Core É importante notar que, para uma total utilização do poder de processamento oferecido pelo Multicore, as aplicações devem ser escritas de modo a usar intensivamente o conceito de threads. Assim, melhora-se o desempenho de cada aplicação unitariamente, conforme ilustrado pela figura 5 [4] a seguir. Um exemplo de mudanças que a tecnologia Multicore promete criar, como descrito em propagandas de desenvolvedores, é o seguinte: Imagine um pai de família fazendo seus cálculos financeiros no escritório, enquanto seu filho assiste na sala a um filme na TV gravado na véspera para o PC, e sua filha escuta MP3s em seu quarto - tudo isso a partir do mesmo PC. Isso será possível graças aos fantásticos recursos de multitarefa oferecidos pelos processadores de múltiplos núcleos [3]. o sistema como um todo (rodando várias aplicações simultaneamente), tal aumento é bem notável. Com todas essas vantagens, os Multicores apresentam um melhor custo/benefício do que os Single-Core. [7] Há outras alternativas ao SMP para criar uma arquitetura Multicore. A seguir discutimos com um pouco mais de profundidade as mais comuns. Multiprocessamento simétrico, ou SMP, é uma arquitetura de multiprocessadores onde dois ou mais processadores idênticos são conectados a uma única memória principal. Isso permite que qualquer processador trabalhe em qualquer tarefa, não importando onde que ela esteja localizada. Assim, é possível ficar movendo as tarefas entre processadores de modo a tornar a carga de trabalho o mais eficiente possível. Porém, há um custo a se pagar: como a memória é muito mais devagar do que o processador, se em arquiteturas single-core é gasto uma grande parcela do tempo esperando pelos dados da memória, na SMP fica pior ainda, pois vários processadores podem ficar esperando por uma mesma memória. [8] Uma alternativa ao SMP é a NUMA (Non-Uniform Memory Access), na qual cada processador tem a sua própria parte da memória. Essa arquitetura permite acessos paralelos à memória, melhorando em muito o throughput se os dados de um processo forem bem localizados. Por outro lado, o custo de mover dados de um processador ao outro fica bem mais caro, ou seja, balancear a carga de trabalho é bem mais custoso. Há ainda outras alternativas não tão utilizadas como as acima: o Multiprocessamento Assimétrico (ASMP) designa diferentes processadores especializados para tarefas específicas, enquanto que, no multiprocessamento com clusters de computadores, nem toda a memória está disponível para todos os processadores. 4 EXEMPLO DE IMPLEMENTAÇÃO MULTICORE Hoje podemos achar a tecnologia Multicore em diversas arquiteturas. A seguir mostraremos um pouco mais da tecnologia presente em duas das maiores empresas atuantes no mercado: a Intel e a AMD. Assim, facilita-se o entendimento da arquitetura Multicore, visível agora sob a luz destes exemplos. Figura 5. Aplicação utilizando a vantagem de ter várias threads na arquitetura Multicore. 3.2 Arquitetura Multicore Uma arquitetura Multicore é geralmente um multiprocessamento simétrico (SMP) implementado em um único circuito VLSI (Very Large Scale Integration). O objetivo é melhorar o paralelismo no nível de threads, ajudando especialmente as aplicações que não conseguem se beneficiar dos processadores superescalares atuais por não possuírem um bom paralelismo no nível de instruções. Esta arquitetura propicia o chamado paralelismo ao nível de chip. Algumas de suas vantagens são: melhor localidade de dados se comparado com outras arquiteturas de multiprocessamento; melhor comunicação entre as unidades; economia de espaço e energia. É importante observar que o aumento de throughput não ocorre no caso da execução de uma única aplicação que não possa ser paralelizada, mas, nos outros casos, e sempre que se considera 4.1 Intel O Dual Core Intel é relativamente simples: são dois processadores com núcleo Prescott 90 nm revisão E0 juntos na mesma pastilha de silício, incluindo instruções de 64 bits e tecnologias que visam diminuir a dissipação de calor. Cada núcleo possui as suas unidades de execução e seu próprio Cache L2 e o restante do processador é exatamente igual ao Pentium 4 Single-Core. A Intel batizou seu Dual Core com núcleo Prescott de Smithfield. A figura 6 a seguir representa o modelo Dual Core da Intel. [15]

Figura 6. Modelo do Intel Dual core. 4.1.1 FSB (Front Side Bus): O grande problema O grande problema do Smithfield é a comunicação entre os dois núcleos. A conversa entre ambos é feita através do FSB externo, gerando disputa para a utilização do barramento. Esse tipo de comunicação é razoavelmente lento. O Smithfield é muito semelhante a um sistema multiprocessado Xeon (2 a 4 processadores), onde a comunicação entre os processadores é feita através do FSB e a banda de memória dividida entre eles e é compartilhada com os dispositivos do Super I/O (Controlador IDE e SATA, AGP, PCI-EXPRESS, USB, etc), surgindo um grande gargalo que causa uma boa perda de desempenho. O Smithfield também compartilha dessas desvantagens do Xeon, o que o torna mais lento. A figura 7 exemplifica a relação entre os núcleos em um Xeon. [15] 4.1.2 Dual Core Características Gerais O Smithfield utiliza o socket top de linha atual da Intel, porém os processadores Dual Core não são compatíveis com as atuais placas mãe. Para utilizá-los é necessário uma placa mãe com o Chipset Nforce 4 Intel Edition. Por esses processadores necessitarem de reguladores de tensão mais robustos, o modelo da placa precisa ser especial. O Dual Core Intel não pode trabalhar a freqüências tão elevadas como a dos processadores Single-Core. Esta limitação é imposta devido ao aumento excessivo de dissipação de calor ao adicionar o segundo core. O Smithfield possue um clock menor que os tradicionais processadores Single-Core com núcleo Prescott, tendo um desempenho inferior ao Single-Core em várias aplicações não otimizadas. Figura 7. Relação entre núcleos de um processador Intel Uma característica interessante dos processadores Dual Core Intel é o modo como resolvem problemas de concorrência entre as caches utilizando um protocolo chamado MESI (Modified, Exclusive, Shared and Invalid). Suponha que a CPU 1 pegou um dado na RAM, este dado é então marcado como Exclusivo e, passados alguns instantes, a CPU 2 pega o mesmo dado da RAM. Na tabela local desta CPU o dado é marcado como compartilhado (shared). Agora uma das duas CPUs, a 2, por exemplo, modifica esse dado em seu cache, causando a ação do protocolo, que marca o dado como Modificado. A partir deste momento, a 1 não pode mais usar esse dado. Então, para sinalizar isto, ele é marcado como inválido. Se a 1 não precisar usar esse dado, terá que esperar de qualquer maneira que a 2 grave o novo valor na memória RAM para poder ler novamente. Até o presente momento a Intel lançou apenas processadores Dual Core destinados apenas ao desktop, o Xeon Dual Core (processador destinado a servidores com capacidade de trabalhar em sistemas com até quatro processadores) chegará ao mercado apenas no fim do ano. 4.1.3 Pentium D e Pentium Extreme Edition O Pentium D e a versão top de linha Pentium Extreme Edition são as duas implementações Dual Core da Intel presentes atualmente no mercado. Ambas implementações possuem núcleos Smithfield, trabalham a 800Mhz de FSB e 1MB de Cache L2 para cada núcleo. A diferença entre o Pentium D e o Pentium Extreme Edition é a presença do HyperTheading no Extreme Edition. O Pentium D não possui este recurso (no caso, o sistema operacional reconhecerá apenas dois processadores no caso do Pentium D e quatro no caso do Pentium Extreme Edition, devido ao HyperThreading). Atualmente o Pentium Dual Core Intel é disponibilizado nas seguintes versões:

Tabela 1. Versões disponíveis do Pentium Dual Core Intel Processador Freqüência Interna Cache L2 Pentium Extreme Edition 3.2 Ghz 2 x 1 MB 840 Pentium D 840 3.2 Ghz 2 x 1 MB Pentium D 830 3.0 Ghz 2 x 1 MB Pentium D 820 2.8 Ghz 2 x 1 MB Pentium 4 Extreme Edition 3.73 Ghz 2 MB 840 3.73 Pentium 4 670 3.8 Ghz 2 MB Pentium 4 630 3.0 Ghz 2 MB 4.1.4 Exemplo de desempenho: Eficiência em renderização 3D Para mostrar o desempenho dos processadores Pentium Dual Core, vamos analisar a eficiência do processamento em aplicações de renderização 3D (um dos principais mercados atingidos pelos processadores Intel).O Pentium 4 com tecnologia HyperThreading (HT) se aproveita das otimizações Multi-Threading e apresenta um excelente desempenho nessas aplicações de renderização. Já o Pentium Extreme Edition 840 é bem superior ao Pentium 4 HT mesmo com o clock bem inferior, já que, além de dual core, possui tecnologia HT. A Figura 8 mostra o tempo (segundos) que cada processador gastou para realizar uma tarefa, confirmando o que foi dito no parágrafo anterior. [15] Figura 8. Comparação entre os processadores 4.1.5 Dissipação Térmica A Intel não libera oficialmente o consumo dos seus processadores Dual Core, mas estima-se que seja algo em torno de 130 watts. O consumo real é em média 80% superior ao Dual Core top de linha da concorrente AMD. No gráfico da figura 9 temos o consumo do Pentium XE 840 Dual Core entre outros que serão analisados posteriormente. [15] Figura 9. Consumo de energia dos processadores 4.2 AMD O projeto Dual Core da AMD é muito diferente do projeto da rival Intel. O processador é feito com a combinação de dois processadores K8 na mesma pastilha de silício e a maneira inovadora de como os núcleos se comunicam é diferente e mais eficiente que a comunicação feita nos processadores Dual Core Intel. Quando começou a desenvolver a arquitetura dos processadores K8 (Opteron e Athlon 64) a AMD já o fez pensando nos processadores MultiCore, por esse motivo não houve dificuldade em desenvolver a sua atual linha de Dual Core. A Intel (como visto anteriormente), ao desenvolver o dual core, simplesmente colocou dois núcleos Prescott em uma única pastilha de silício, sem nenhum mecanismo especial para a comunicação entre eles. Tal comunicação é feita através do FSB externo, ou seja, é semelhante a um sistema tradicional biprocessado Xeon. Dessa forma a comunicação entre os dois núcleos é lenta, já que além de se comunicarem através do FSB externo os núcleos compartilham a banda da memória através do próprio barramento externo, o que aumenta o tempo de acesso à memória RAM. A AMD, com a tecnologia de HyperTransport e controlador de memória integrado, criou um sistema de comunicação inovador, compatível bem mais eficiente, como será visto a seguir. 4.2.1 HyperTransport e Controlador de Memória Integrado: O fim do gargalo O que beneficia a arquitetura "K8" é o controlador de memória integrado. Dessa forma não há necessidade de fazer a comunicação com as memórias através do Chipset, pois as memórias são acessadas diretamente pelo processador através de um barramento exclusivo (HyperTransport), o que resulta em um melhor aproveitamento da banda. Não há mais dependência do FSB, a comunicação com os outros componentes é feita também através do HyperTransport (não há necessidade de compartilhar os recursos com os dispositivos do Super I/O - Controlador IDE e SATA, AGP, PCI-EXPRESS, USB e etc). O HyperTransport é uma conexão ponto-a-ponto, paralela, de alta performance, alta velocidade, alta largura de banda e de baixa latência. É utilizado em conexões chip-a-chip, em duas vias unidirecionais (full-duplex), uma para transmissão e outra para recepção, onde os dados são transmitidos em pacotes usando a

tecnologia DDR (Double Data Rate), transmitindo dois bits de dados por ciclo de clock. A figura 10 representa o modelo Multicore (e multiprocessado) utilizado pela AMD. [15] Figura 10. Modelo Multicore AMD 4.2.2 Dual Core Características Gerais No Dual Core AMD cada núcleo possui as suas unidades de execução e Cache L2 individuais, apenas o controlador de memória e o HyperTransport são divididos entre os dois núcleos. O design foi feito dessa forma para manter a compatibilidade com os atuais Chipsets e placas mãe. Os dois núcleos comunicam-se com os recursos compartilhados através do Crossbar Switch e do System Request Queue. Assim, a comunicação entre os núcleos é feita internamente e não depende do barramento externo e nem do barramento das memórias. No Opteron, ao contrário do Dual Core Intel, usa-se o MOESI ao invés do MESI para o controle de concorrência entre as caches. O estado adicional O, é de Owner, que no caso significa que uma CPU pode apropriar-se de um dado em seu cache local e, se fizer uma alteração, ela mesma servirá uma nova cópia do dado à outra CPU, sem qualquer acesso adicional à RAM, sendo tudo feito através do barramento HyperTransport. O modelo da arquitetura dos processadores Dual Core AMD é dado na figura 11. [4] O único gargalo da arquitetura Dual Core AMD é banda da memória: são 6.4 GB/s (Dual Channel DDR 400), compartilhados pelos dois núcleos. A AMD planeja utilizar em 2006 memórias DDR2, o que deve resolver este problema em partes. Os processadores Dual Core AMD são fabricados no processo de 90 nm utilizando uma nova tecnologia de silício esticado chamada "Dual Stress Liner", que mantém o consumo do processador baixo mesmo operando a maiores freqüências. Esses processadores possuem também instruções SSE3 e controladora de memória mais eficientes. Figura 11. Modelo do processador Dual Core AMD As implementações atuais de Dual Core AMD se dividem em duas categorias: Tabela 2. Categorias do Dual Core AMD Nome Athlon 64 X2 Opteron série x75 Tipo Desktop Servidor 4.2.3 Opteron Os processadores Dual Core Opteron são fabricados utilizando a nova revisão do Athlon 64, "E". O Opteron possui capacidade de multiprocessamento, sendo então destinado a servidores, podendo trabalhar em sistemas com até oito processadores. Os processadores Opteron se dividem em três famílias, de acordo com o suporte da placa maẽ, conforme pode ser visto na tabela 3. Família 1xx 2xx 8xx Tabela 3. Famílias em que o Opteron se divide Características Placa mãe com um soquete, não suporta multiprocessamento, e possui apenas 1 barramento HyperTransport. Placa mãe com dois soquetes, aceita até dois processadores e possui 2 barramentos HyperTransport. Placa mãe com oito soquetes, suporta até oito processadores e possui 3 barramentos HyperTransport.

O Opteron Dual Core tem tudo para ser um sucesso. Além de ser a única solução Dual Core x86 da atualidade destinada a servidores, será possível aproveitar as placas mãe atuais e dobrar o número de processadores reais. Por exemplo, se uma placa mãe possui dois soquetes, suportando naturalmente apenas dois processadores, no caso do Dual Core esse número dobra para quatro (cada processador é Dual Core) e o ganho de desempenho é considerável, pois normalmente aplicações utilizadas em servidores possuem otimizações Multi-Threading e se beneficiam com a multitarefa. O Opteron bi-processado Dual Core também é mais eficiente que um sistema bi-processado tradicional. Em um sistema biprocessado Opteron a comunicação entre os dois processadores é feita através do HyperTransport (e a comunicação entre os núcleos de mesmo encapsulamento é feita internamente na pastilha), não se utilizando do gargalo como em outros processadores. 4.2.4 Athlon 64 X2 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 utilizados nos processadores Athlon 64 Single-Core). Atualmente estão disponíveis os seguintes Athlon 64 X2: Tabela 4. Modelos disponíveis de Athlon 64 X2 Processador Freqüência Cache Athlon 64 X2 3800+ 2.0 Ghz 512KB Athlon 64 X2 4200+ 2.2 Ghz 512KB Athlon 64 X2 4400+ 2.2 Ghz 1MB Athlon 64 X2 4600+ 2.4 Ghz 512KB Athlon 64 X2 4800+ 2.4 Ghz 1MB O Athlon 64 X2 trabalha com freqüências relativamente elevadas, 2.0, 2.2 e 2.4 Ghz, isso significa que mesmo em aplicações onde não há otimização para multiprocessamento (jogos atuais, por exemplo) esse processador terá bom desempenho. A AMD especifica o Athlon 64 X2 como um processador totalmente independente da sua linha de processadores Single- Core. O público alvo são os usuários avançados que trabalham com multitarefa ou utilizam aplicações destinadas a workstations, codificação de vídeo, renderização 3D, etc. Ou seja, o Athlon 64 X2 não é concorrente do Athlon 64 FX-57 e sim uma opção para quem procura rapidez para o seu trabalho. Para jogos o Athlon 64 FX-57 continua sendo o melhor processador da atualidade, já que não há otimização para multiprocessamento (Multi-Threading). A Figura 12 mostra a família de processadores AMD. [15] Figura 12. Família de processadores AMD 4.2.5 Diferenças entre Athlon 64 X2 e Opteron Como são feitos com o objetivo de atingir públicos diferentes (Desktop, Workstation, e Servidor), o Athlon 64 X2 e o Opteron, possuem algumas características distintas. Como não possui capacidade para trabalhar em sistemas com vários processadores, o Athlon 64 dispõe de apenas um barramento HyperTransport, que serve para ligar os processadores em um sistema multiprocessado (2 a 8 processadores). O Opteron, no entanto, possui 3 barramentos HyperTransport (já que utiliza o tanto para conexões com periféricos como com outros processadores). Como dito anteriormente, o Dual Core da AMD utiliza o controlador de memória e o HyperTransport compartilhados entre os dois núcleos para manter compatibilidade com os atuais Chipsets e placas mãe. Esses processadores diferem por utilizarem soquetes diferentes: 939 no caso do Athlon 64 X2, e soquete 940 no caso do Opteron. Para habilitar o funcionamento, é necessária apenas uma atualização de Bios. 4.2.6 Desempenho em Jogos Os processadores da AMD fazem um grande sucesso entre os game-maníacos por apresentarem um excelente desempenho em jogos. Como já foi dito neste tópico, inicialmente os jogos não terão ganhos de desempenho com os processadores Dual Core por não possuírem otimizações Multi-Threading. Apesar disso, o desempenho ainda é excelente. No teste realizado na Figura 13 [15], o Athlon 64 X2 4800+, que possui os dois núcleos funcionando a 2.4 Ghz, teve desempenho semelhante ao Athlon 64 4000+, que também possui 2.4 Ghz. Naturalmente o desempenho foi menor que o do Athlon 64 FX-55, que possui 2.6 Ghz.

todas desvantagens em potencial encontradas. Para um futuro próximo é esperada que a tecnologia Multicore seja maioria nos consumidores domésticos e mais e mais novas arquiteturas, cada vez mais impressionantes, sejam desenvolvidas. Figura 13. Comparação de desempenho dos processadores 4.2.7 Dissipação Térmica A dissipação térmica dos processadores Dual Core AMD não é muito elevada em relação a um processador Single-Core. Oficialmente (segundo a AMD), Os Athlon 64 X2, das famílias 4400+, 4600+ e 4800+, gastam 110W enquanto o Athlon 64 Single-Core 130nm consome apenas 89 watts. Os valores em watts de dissipação relativa entre os processadores Intel (Single e Dual Core) e AMD (Single e Dual Core) estão representados na figura 14. [15] Figura 14. Dissipação térmica de processadores 4.2.8 Considerações Finais Os Processadores Dual Core são as implementações existentes e acessíveis de arquitetura Multicore. Apesar dos preços ainda bastantes altos, estão ficando mais baratos com o tempo, devido à competição entre a AMD e a Intel que lançam um modelo melhor em prazos de tempos pequenos (portanto, os que vão ficando antigos têm seus preços reduzidos). O mais viável em questões de custo/benefício atualmente é o processador Dual Core AMD, que custa mais caro que um processador Dual Core Intel (o modelo mais simples - X2 3800+ - tem um preço mais elevado que o Pentium D 820). 5 CONCLUSÃO Dadas as limitações encontradas pela arquitetura Single-Core, a solução encontrada na forma de Multicore é muito bem vinda. Suas inúmeras vantagens quando comparada com a primeira, já a dão um custo/benefício melhor, mesmo sendo ela uma tecnologia relativamente bem nova e, portanto, sujeito a altos preços. Com o passar do tempo, a indústria está descobrindo métodos cada vez melhores de projetar processadores com a tecnologia Multicore, como visto da comparação entre Intel e AMD, tentando eliminar 6 REFERÊNCIAS [1] Multi-Core Processors The Next Evolution In Computing. http://multicore.amd.com/whitepapers/multi- Core_Processors_WhitePaper.pdf, visitado em 25/10/2005. [2] Lançamento da tecnologia de múltiplos núcleos. http://multicore.amd.com/pt-br/technology/, visitado em visitado em 25/10/2005. [3] Vantagens da tecnologia de múltiplos núcleos da AMD. http://multicore.amd.com/pt-br/products/benefits/, visitado em 25/10/2005. [4] O que é a tecnologia de múltiplos núcleos?. http://multicore.amd.com/whatismc/, visitado em 25/10/2005. [5] Multi-Core Technology Brief. http://www1.us.dell.com/content/topics/topic.aspx/global/pro ducts/precn/topics/en/multi_core_precn?c=us&l=en&s=gen, visitado em 25/10/2005. [6] Intel Multi-Core Platforms. http://www.intel.com/technology/computing/multi-core/, visitado em 25/10/2005. [7] Multicore. From Wikipedia, the free encyclopedia. http://en.wikipedia.org/wiki/multicore, visitado em 25/10/2005. [8] Symmetric multiprocessing. From Wikipedia, the free encyclopedia. http://en.wikipedia.org/wiki/symmetric_multiprocessing, visitado em 25/10/2005. [9] Non-Uniform Memory Access. From Wikipedia, the free encyclopedia. http://en.wikipedia.org/wiki/non- Uniform_Memory_Access, visitado em 25/10/2005 [10] Lei de Moore: até quando? V A razão do limite. http://www.forumpcs.com.br/coluna.php?b=107220, visitado em 27/10/2005 [11] Características e recursos dos processadores. http://www.guiadohardware.net/tutoriais/processadores/carac teristicas_e_recursos/parte-4/index.php, visitado em 27/10/2005 [12] First Tests of Intel's Dual-Core Processor. http://www.pcworld.com/reviews/article/0,aid,120264,00.asp, visitado em 27/10/2005 [13] Intel's Dual-Core Chips Debut. http://www.pcworld.com/news/article/0,aid,117718,00.asp, visitado em 27/10/2005 [14] Let the Dual-Core Revolution Begin. http://www.intel.com/personal/desktopcomputer/dual_core/i ndex.htm, visitado em 27/10/2005 [15] Fórum do Clube do Hardware > Processadores Dual-Core. http://forum.clubedohardware.com.br/index.php?showtopic= 263159, visitado em 27/10/2005