Code Morphing Software
O Crusoé pode ser classificado como um “hybrid software-hardware CPU”, um processador híbrido de hardware e software. Claro que na verdade tudo acaba sendo feito via hardware, mas no Crusoé temos uma camada extra de software, justamente o Code Morphing Software.
Veja os dois diagramas abaixo. Veja que nos processadores atuais, todas as funções executadas pelo processador são feitas por circuitos dedicados, o que torna o processador muito grande e complexo. Veja que o Crusoé por sua vez é dividido em duas partes. O quadrado maior representa a parte física do processador, enquanto os retângulos separados representam as funções que são executadas via software.
hospedagem de sites" />
hospedagem de sites" />
O Code Morphing, o programa que executa a maior parte das funções que outros processadores executam via hardware, fica armazenado em uma pequena porção de memória ROM integrada ao processador. Quando o processador é ligado, o code morphing é a primeira coisa a ser carregada, que fica residente na memória RAM, como se fosse um outro programa qualquer, mas com uma prioridade de execução altíssima. São carregados então o BIOS o sistema operacional e demais programas. O Code Morphing fica então residente, funcionando como um intermediário entre a parte física do processador e os programas.
No Crusoé, é o Code Morphing que faz a tarefa de converter as instruções x86 enviadas pelo programa, ordená-las de forma a serem executadas mais rápido e coordenar o uso dos registradores, tarefas que em outros processadores são executadas via Hardware.
Todas as instruções traduzidas pelo code morphing são armazenadas num cache especial, chamado translation cache. Este cache ocupa parte dos caches L1 e L2 do processador e também uma área reservada da memória RAM que pode variar de tamanho de acordo com o volume de instruções diferentes processadas.
O uso do translation cache evita que o processador perca tempo traduzindo várias vezes uma instrução muito usada pelo programa. Naturalmente, as instruções que forem sendo mais utilizadas vão assumindo as primeiras posições no cache, enquanto as menos utilizadas vão sendo movidas para a memória RAM ou eliminadas. Outro recurso, é que cada vez que uma instrução é reutilizada apartir do cache, o Code Morphing trata de dedicar mais alguns ciclos de processamento, de modo a otimiza-la cada vez mais. Quanto mais é usada, mais rápido a instrução irá rodar.
Para prevenir possíveis erros de tradução de instruções, existem mais duas pequenas áreas de memória, que servem para armazenar o estado dos registradores do processador a cada bloco de instruções executado. Como os registradores armazenam tudo o que está sendo processado pelo processador no momento, salvando os dados armazenados nos registradores é possível voltar ao estado anterior caso qualquer erro ocorra, de modo completamente transparente ao sistema operacional e ao usuário. As duas áreas são chamadas de “Working Copy” e “Shadow Copy”. A work copy, ou cópia de trabalho armazena os dados dos registradores cada vez que um novo bloco de instruções começa a ser processado. Caso tudo ocorra bem, então a copia armazenada na work copy é armazenada na shadow copy (copia sombra); caso ocorra algum erro, a cópia anteriormente é carregada e o Code Morphing Software faz uma nova tradução do bloco de instruções, desta vez usando algoritmos especiais para descobrir qual instrução causou o erro, de modo que não ocorra novamente. Veja que este sistema causa apenas uma pequena perda de tempo cada vez que ocorre um erro, não causa travamentos ou outros efeitos colaterais.
O uso do Code Morphing, traz uma grande flexibilidade ao Crusoé. É possível criar chips compatíveis com várias plataformas diferentes apenas alterando a camada de software, sem ter que alterar um único transístor no processador. Isto torna possível para a Transmeta desenvolver várias versões diferentes do Crusoé para as mais diferentes aplicações.
Consumo Elétrico
Talvez você já tenha ouvido falar de um recurso do mobile Pentium III (uma versão do Pentium III de baixo consumo elétrico destinada a notebooks) que faz com que o processador reduza sua frequência de operação sempre que não estiver sendo muito exigido, de modo a economizar eletricidade.
O Crusoé possui um recurso parecido, porém mais avançado. Durante a execução dos programas, o processador pode alterar dinamicamente sua frequência de operação, ajustando-se às demandas do programa. Se você tem um Crusoé de 700 MHz, mas no momento o programa só estiver utilizando processamento equivalente a 200 MHz, por exemplo, o processador irá baixar sua frequência de operação e consequentemente seu consumo elétrico, mas ficará de prontidão para aumentá-la imediatamente assim que for necessário, de modo transparente ao usuário. Este recurso é chamado “LongRun technology”.
Isto permite que o Crusoé consuma realmente um mínimo de eletricidade. A versão de 700 MHz trabalhando a todo vapor consome pouco menos de 2 Watts. Como na maioria do tempo não é utilizada toda a potência do processador, pode-se imaginar quão pequeno seja o consumo na prática.
O Crusoé traz instigados ao processador também os circuitos de acesso à memória e o controlador PCI, substituindo a porte norte do chipset. Em futuras versões, é possível que o Crusoé traga também controladores de vídeo e som integrados, o que permitiria desenvolver sistemas ainda mais económicos.
As primeiras versões
Inicialmente foram lançadas duas versões do Crusoé, a TM3120 e a TM5420. A primeira possui um desempenho menor, assim como um consumo elétrico mais baixo, enquanto a segunda consome um pouco mais de eletricidade, mas apresenta um desempenho bem superior
Veja os recursos apresentados por cada versão:
|
TM3120 |
TM5420 |
Versões de |
333 e 400 MHz |
500, 600 e 700 MHz |
Cache L1 |
96 KB |
128 KB |
Cache L2 |
não tem |
256 KB |
Tipos de memória RAM suportados |
SDRAM |
SDRAM e DDR-SDRAM |
Controlador de memória e controlador PCI |
Integrados ao processador |
Integrados ao processador |
Encapsulamento |
474 BGA |
474 BGA |
Consumo mínimo (com o processador ocioso) |
0.015 Watt |
0.030 Watt |
Consumo elétrico com o processador operando na capacidade máxima |
0.9 Watt |
1.8 Watts |
O Crusoé nasceu como um chip destinado a equipamentos portáteis, já que seu projeto tem como objetivo baixo consumo elétrico e baixo custo de produção e, não necessariamente, a performance, como em outros projetos de processadores. Isto não significa que não possam ser lançadas versões do Crusoé destinadas a micros desktop no futuro, mas sim que este mercado provavelmente nunca será seu forte.
Para muitos, isto sugere que o Crusoé nunca competirá diretamente com os chips da Intel ou da AMD, mas a realidade é que o mercado de computadores portáteis irá crescer muito nos próximos anos. Calcula-se que dentro de quatro anos, existirão mais computadores portáteis do que micros de mesa e, sem dúvida, a Transmeta saiu na frente na corrida para dominar este nicho de mercado.
hospedagem de sites" />Crusoé TM5420
As novas versões
Apesar das vendas da Transmeta ainda estarem muito longe de serem astronómicas, continuam firmes e fortes desenvolvendo novas versões do Crusoé.
Depois das duas versões iniciais, a Transmeta lançou duas novas versões chamadas TM5500 e TM5800. As novidades em relação às versões anteriores são muitas. Em primeiro lugar, vem uma vantagem estratégica, que é a adoção de uma técnica de produção de 0.13 mícron. Sem dúvida um avanço importante, já que uma técnica de produção antiga poderia colocar a perder todo o esforço de diminuir o consumo do processador.
O TM5500, a versão mais barata, vem com 256 KB de cache L2, enquanto o TM5800 é equipado com generosos 512 KB de cache. A tensão usada pelos processadores é de 0.9 V a 1.3 V, dependendo da versão. Em ambos os casos foram inicialmente lançadas versões de 600 a 800 MHz.
A voltagem mais baixa ajuda a diminuir ainda mais o consumo. Na verdade, ao diminuir a voltagem de um processador, seu consumo elétrico diminui proporcionalmente, pois é usada menos energia em cada ciclo de clock. Em compensação, é preciso desenvolver o projeto muito cuidadosamente para poder baixar a tensão sem comprometer a estabilidade do processador.
Junto com o aumento na freqüência e na quantidade de cache, veio um pequeno aumento no consumo elétrico dos chips. Operando a 800 MHz, o TM5800 consome 6 Watts. Entretanto, este é o consumo do chip operando à plena carga. Graças ao sistema de gerenciamento de energia, ao menos que o processador seja usado para alguma tarefa intensiva, compactar vídeos, aplicar filtros gráficos pesados, rodar jogos 3D, etc. o consumo sempre ficará bem abaixo disso, na casa dos 2 ou 3 Watts na maior parte do tempo. Só para efeito de comparação, um Celeron 600, um dos chips mais económicos para PCs de mesa atualmente, consome 15 Watts e os Athlons e Pentiums 4 topo de linha já estão se aproximando da marca dos 100 Watts...
Mais um reforço para os novos chips veio com a nova versão do code morphing software. Como os Crusoé são baseados neste software, é possível melhorar o desempenho dos processadores, ou mesmo diminuir seu consumo elétrico através de melhorias no software. Foi isso que a Transmeta fez.
Os antigos TM5420 rodavam o code Morphing versão 4.1.7, enquanto os atuais rodam a versão 4.2.0. Segundo a Transmeta, a nova versão aumentou o desempenho dos chips em até 28% e possibilitou uma diminuição no consumo elétrico entre 2 e 42%, dependendo do aplicativo (quanto mais intensivo o aplicativo, menor será a economia, já que com o chip trabalhando à plena carga não existe muito o que fazer para economizar energia sem diminuir o desempenho).
Mais uma novidade é que a Transmeta está desenvolvendo uma versão de 256 bits do Crusoé, que será lançada em 2002. As versões atuais são processadores de 128 bits. No caso do Crusoé, é possível alterar à vontade o design do chip, pois não é preciso manter compatibilidade com as instruções x86, usadas pelos aplicativos atuais, como acontece no caso dos chips Intel e AMD. Na verdade, o processador não roda os aplicativos e sim o code morphing software, é este programa quem se encarrega de "traduzir" as instruções dos programas nas instruções entendidas pelo processador.
Ao alterar a arquitetura do chip, tudo o que é necessário fazer é alterar também o code morphing, para que ele rode sobre a nova arquitetura. Esta é uma vantagem competitiva para a Transmeta, pois seus engenheiros podem incorporar todas as novas idéias e tecnologias no chip, sem precisar se preocupar com a questão da compatibilidade com aplicativos.
Concordo que até agora o Crusoé fez bem pouco, pouquíssimo. As versões atuais chegam a ser 50% mais lentas que um Pentium III da mesma freqüência e o baixo consumo elétrico não é capaz de aumentar perceptivelmente a autonomia de bateria dos notebooks, já que num notebook moderno quem consome mais energia, até 50% do total é a tela de LCD de matriz ativa. O consumo do processador poderia cair a níveis próximos de zero, que mesmo assim a autonomia das baterias só aumentaria em 20 ou 30%.
Entretanto, o Crusoé já conseguiu também algumas vitórias, por exemplo no ramo de servidores. Como neste tipo de equipamento, geralmente são usados vários processadores, a dissipação do calor começa a tornar-se algo crítico. Ao mesmo tempo, como a maioria das empresas está passando a armazenar seus servidores em data centers, onde paga-se pelo espaço usado, o Crusoé começou a ser uma solução atrativa, já que gera pouco calor e justamente por isso permite construir servidores pequenos (fisicamente), mas com vários processadores. Várias empresas já vem ganhando dinheiro vendendo servidores equipados com os chips Crusoé.
Na minha opinião, o interessante nos chips Crusoé não são os chips em sí, que comparados com os chips da Intel e AMD atuais em quesitos como desempenho e custo/benefício, podem ser considerados no máximo "regulares", mas sim pela idéia por trás do code morphing software e de outras inovações desenvolvidas pelos engenheiros da Transmeta. Os Crusoés podem não ser lá a melhor opção de compra atualmente, mas a tecnologia usada neles vai mudar muita coisa na indústria e influenciar os futuros processadores. Os fabricantes estão começando a perceber que ao invés de simplesmente socar mais transístores dentro do processador, também é possível melhorar seu desempenho ou outras características que sejam consideradas importantes, tornando seus processadores mais inteligentes, como o Crusoé :-)
Pentium 4
O lançamento do Pentium 4 foi adiado mais de uma vez, até que finalmente o processador foi lançado em Novembro de 2000, inicialmente em versões de 1.4 e 1.5 GHz.
Atualmente já existem versões bem mais rápidas e inclusive uma nova arquitetura mais avançada que o core Willamette usado nestas versões iniciais. Mas, mantendo a idéia de explicar a evolução dos processadores, vou começar comentando as características do processador e das versões iniciais para depois comentar sobre as versões atuais.
Um ponto interessante sobre as primeiras versões do Pentium 4 é que o único chipset disponível durante quase um ano, o i850 da própria Intel suporta apenas memórias Rambus, o que obrigava qualquer um interessado em adquirir um Pentium 4 a adquirir também módulos de memória Rambus. Este tipo de memória era inicialmente absurdamente caro, tanto que a Intel passou a subsidiar parte do custo das memórias, dando um desconto nos processadores vendidos a integradores e dando “de brinde” dois pentes de memórias Rambus de 64 MB cada nos processadores in-a-box destinados ao consumidor final.
Com o tempo, o preço das memórias Rambus foi caindo, mas este tipo de memória ainda é muito mais caro que as memórias SDRAM ou DDR. Por sorte, já existem atualmente placas mãe para Pentium 4 com suporte tanto a memórias DDR, quanto a memórias SDRAM comuns. Atualmente, você só precisa gastar a mais com memórias Rambus se quiser.
A Arquitetura
O primeiro alerta a se fazer sobre o Pentium 4 é que o aumento da freqüência de operação não significa um ganho automático de potência. Um Pentium 4 de 1.5 GHz não é 50% mais rápido que um Pentium III de 1 GHz. Uma coisa é o número de ciclos por segundo que o processador pode executar, outro é o que ele consegue processar em cada ciclo. Um 486 de 100 MHz por exemplo é muito mais lento que um Pentium de 75 MHz, apesar de operar a uma freqüência mais alta.
Para entender os pontos fortes e fracos do Pentium 4, onde ele é mais rápido e onde ele é mais lento, por que não começar analisando a arquitetura interna do processador?
A Intel batizou a nova arquitetura do Pentium 4 de “NetBurst”. O Nome não tem nada a ver com o desempenho em redes ou na Internet, mas tenta ilustrar os novos recursos do processador, assim como dar um ar de superioridade. A arquitetura NetBurst é composta por 4 componentes: Hyper Pipelined Technology, Rapid Execution Engine, Execution Trace Cache e Bus de 400MHz. Vamos aos detalhes de cada uma das 4 tecnologias:
Hyper Pipelined Technology
Esta é a característica mais marcante do Pentium 4. O Pipeline é um recurso que divide o processador em vários estágios, que trabalham simultaneamente, dividido o trabalho de processar as instruções. É como uma linha de produção com vários operários, onde cada um monta uma peça, até termos no final o produto completo. Apartir do 486, todos os processadores utilizam este recurso.
O Pentium III possui 10 estágios, o Athlon possui 11 estágios, enquanto o Pentium 4 possui nada menos que 20 estágios, daí o nome “Hyper Pipelined”.
O uso de Pipeline permite que o processador seja capaz de processar várias instruções ao mesmo tempo, já que cada estágio cuida de uma fração do processamento. Quanto mais estágios, menor será o processamento executado em cada um. No caso do Pentium 4 cada estágio do Pipeline processa apenas metade do processado por um estágio do Pentium III, fazendo com que teoricamente o resultado final seja o mesmo, já que em compensação existem o dobro de estágios.
O uso de mais estágios permite que o processador opere a freqüências bem mais altas, já que cada estágio executa menos processamento. O grade problema neste caso é que os processadores atuais executam várias instruções simultaneamente, enquanto os programas são uma seqüência de instruções. O Pentium 4 processa três instruções por ciclo, o Pentium antigo (Pentium 1) processa duas, e assim por diante.
Caso as instruções seguintes não dependam do resultado da primeira, como uma seqüência de somas de vários números por exemplo, o processador não terá nenhum problema para resolvê-las rapidamente. Porém, sempre que existir uma opção de tomada de decisão, onde o processador precisa primeiro resolver uma instrução para saber qual caminho deve tomar, como por exemplo “Se A > 3 então B = C+5 senão B = C-5”, entra em cena o recurso de execução especulativa, onde enquanto é resolvida a primeira instrução, o processador escolhe um dos caminhos possíveis para ir “adiantando o serviço” enquanto não sabe qual deverá seguir.
Se ao terminar de resolver a primeira instrução o processador perceber que tomou o caminho certo, simplesmente continuará apartir dali. Caso por outro lado o processador tenha adivinhado errado, então terá que jogar fora todo o trabalho já feito e tomar o outro caminho, perdendo muito tempo.
O Pentium 4 perde gritantemente nesse quesito, pois ele demora o dobro de ciclos de clock para processar a primeira instrução, já que ela é processada em 20 estágios, contra 10 do Pentium III. Isto significa que a cada tomada de decisão errada serão perdidos pelo menos 20 ciclos de processamento, um eternidade considerando que em média, 14% das instruções processadas são de tomada de decisão. Se por acaso o processador errasse 50% das previsões, então os 7% de erros de previsão resultariam numa diminuição de 30% do desempenho do processador em comparação com o antigo Pentium III.
Isto significa que a princípio o Pentium 4 é mais lento que um Pentium III do mesmo clock, podendo em compensação operar a freqüências bem mais altas. Todas as demais alterações feitas pela Intel, explicadas a seguir servem como paliativos para tentar diminuir a perda de desempenho trazida pelo maior número de estágios de Pipeline. Foi justamente devido a isto que a Intel optou por lançar diretamente os modelos de 1.4 e 1.5 GHz, pulando as versões de 1.1 e 1.2, que seriam o caminho mais óbvio já que o Pentium III ficou estacionado na versão de 1 GHz. Caso fosse lançado, um Pentium 4 de 1.1 GHz perderia para um Pentium III de 1 GHz em praticamente todas as aplicações.
Além da perda de desempenho, outro efeito colateral de se usar mais estágios de Pipeline é o fato de tornar o processador maior e mais complexo e fatalmente bem mais caro de se produzir. O Pentium 4 de 0.18 mícron mede 217 milímetros quadrados, quase o dobro do Athlon Thunderbird, que mede 120 mm². Isto significa que o Pentium 4 é proporcionalmente mais caro de se produzir.
Execution trace cache
O uso do cache L1 no Pentium 4 é no mínimo inovador. O Pentium 3 por exemplo tem 32 KB de cache L1, dividido em 2 blocos de 16 KB cada, para instruções e dados. O Athlon tem 128 KB de cache L1, também dividido em dois blocos. O Pentium 4 por sua vez tem apenas 8 KB de cache para dados e só. Só? Sim, só isso. Porém, ele traz duas inovações que compensam esta aparente deficiência. A primeira é que graças ao tamanho reduzido, o pequeno cache de dados tem um tempo de latência menor, ou seja é mais rápido que o cache L1 encontrado no Pentium III e no Athlon. Do ponto de vista dos projetistas da Intel, esta foi a melhor relação em termos de desempenho.
Apesar do cache L1 sempre operar na mesma frequência do processador, no Athlon o cache L1 tem um tempo de latência de 3 ciclos, no Pentium III o cache tem um tempo de latência de 2 ciclos, enquanto no Pentium 4 o cache, apesar de muito pequeno tem um tempo de latência de 1 ciclo. É quase tão rápido quanto os registradores do processador.
Note que a velocidade do cache é inversamente proporcional ao tamanho. É por isso que o enorme cache L1 do Athlon não representa um ganho de desempenho muito grande sobre o pequeno cache L1 do Pentium III. O processador precisa acessar menos vezes a memória RAM, já que o cache é capaz de armazenar mais dados, mas por outro lados perde algum tempo em cada acesso ao cache. É a velha lei de custo-benefício em ação.
O cache de instruções por sua vez foi substituído pelo Execution trace Cache, que ao invés de armazenar instruções, armazena diretamente uOPs, que são as instruções já decodificadas, prontas para serem processadas. Isto garante que o cache tenha apenas um ciclo de latência, ou seja o processador não perde tempo algum ao utilizar dados armazenados no trace cache, ao contrário do que acontecia no Pentium III, onde são perdidos pelo menos dois ciclos em cada leitura, o tempo necessário para decodificar a instrução.
Se você está em dúvida sobre o que é um “uOP”, e como eles são produzidos e processados, aqui vai uma explicação resumida: Apesar dos processadores para micros PC continuarem usando o conjunto x86 de instruções, que é composto por 184 instruções, internamente eles são capazes de processar apenas instruções simples de soma e atribuição. Existe então um circuito decodificador, que converte as instruções complexas usadas pelos programas nas instruções simples entendidas pelo processador. Uma instrução complexa pode ser quebrada em várias instruções simples. No Pentium 4, cada instrução simples é chamada de “uOP”. No Athlon cada conjunto de duas instruções recebe o nome de “macro-ops”.
Bus de 400 MHz
Visando concorrer com o bus EV6 do Athlon, que opera de 100 a 133 MHz, com duas transferências por ciclo, o que resulta na prática em freqüências de respectivamente 200 e 266 MHz, o Pentium 4 conta com um bus operando a 100 MHz, mas com 4 transferências por ciclo, o que equivale na prática a um barramento de 400 MHz.
O barramento controla a velocidade de comunicação entre o processador e o chipset. Um barramento mais rápido, não significa um ganho de performance, porém, um barramento insuficiente, causará perda de desempenho, fazendo com que o processador não consiga comunicar-se com os demais componentes à velocidade máxima.
Como o Pentium 4 tem um cache L1 muito pequeno, o processador acaba sendo muito dependente da velocidade de acesso à memória RAM, pois os acessos são muito frequentes. Esta característica serve de justificativa para a decisão da Intel de utilizar memórias Rambus nas primeiras versões do Pentium. Este tipo de memória é capaz de operar a frequências muito altas.
Os primeiros modelos do Pentium 4 utilizavam memórias Rambus PC-800, que operam a 200 MHz e realizam 4 transferências por ciclo, sem dúvida mais rápidas que as memórias PC-100 ou PC-133 que equipavam os Athlons e Pentiums III da época.
Mesmo hoje em dia, as placas para Pentium 4 com suporte a memórias SDRAM comuns apresentam um desempenho bastante inferior por causa do acesso mais lento à memória. Apenas as placas com suporte a memórias DDR são capazes de fazer frente às placas com memórias Rambus.
Rapid Execution Engine
Todo processador atual é dividido em dois componentes básicos, as unidades de execução de inteiros e as unidades de ponto flutuante. A parte que processa as instruções envolvendo números inteiros é responsável pela maior parte das instruções e pelo desempenho do processador nos aplicativos do dia a dia enquanto as unidades de ponto flutuante são as responsáveis pelo processamento das instruções envolvendo valores complexos, usadas por jogos e aplicativos gráficos.
A “Rapid Execution Engine” do Pentium 4 consiste num reforço nas unidades de inteiros do processador. O Pentium 4 possui um total de 5 unidades de processamento de inteiros, duas ALUs, que processam as instruções mais simples, duas GLUs, encarregadas de ler e gravar dados e uma terceira ALU, encarregada de decodificar e processar as instruções complexas, que embora em menor quantidade, são as que tomam mais tempo do processador.
Este conjunto de 5 unidades de execução de inteiros é semelhando ao do Pentium III, porém, como diferencial, no Pentium 4 tanto as duas ALUs encarregadas das instruções simples, quanto as duas GLUs encarregadas das leituras e gravações são duas vezes mais potentes.
Segundo a Intel, as quatro unidades operam a uma freqüência duas vezes superior à do processador, o que sugere que num Pentium 4 de 1.5 GHz elas operem a 3 GHz. Porém, na verdade, cada unidade passou a ser composta por duas unidades trabalhando em paralelo. Com isto as unidades tornam-se capazes de processar duas instruções por ciclo, mas a freqüência de operação continua a mesma. Na prática, o slogan acaba sendo real, mas em termos técnicos é um dado distorcido.
Este é um recursos que na teoria parece maravilhoso, mas existe um pequeno detalhe que elimina boa parte do ganho que seria de se esperar deste esquema. Apesar das duas ALUs de instruções simples terem ficado mais rápidas, visando justamente compensar a perda de desempenho trazida pelos 20 estágios de Pipeline do Pentium 4, a ALU de instruções complexas não teve a mesma evolução. Isto significa que ao passar a usar 20 estágios de Pipeline, esta terceira ALU tornou-se mais lenta que a mesma no Pentium III.
Temos então um cenário onde as instruções simples são rapidamente processadas, mas as instruções complexas ficam entaladas na vala comum da terceira ALU, causando uma grande perda de desempenho.
No coprocessador aritmético o cenário é ainda mais complicado, pois apesar das unidades de execução terem perdido desempenho devido ao Pipeline de 20 estágios, não houve nenhum avanço para equilibrar a balança, como tivemos nas unidades de inteiros. Pelo contrário, o coprocessador aritmético encolheu, pois foram podadas duas das unidades de execução, uma das que processava instruções MMX e uma das que processava instruções SSE.
Ao invés de evoluir, como seria de se esperar, o coprocessador aritmético do Pentium 4 tornou-se ainda mais frágil do que o do Pentium 3, trazendo um cenário no mínimo curioso. Enquanto na época do Pentium II e do K6, a AMD competia com um processador que apesar de possuir um bom desempenho em aplicativos de escritório era literalmente massacrado nos jogos e aplicativos gráficos, temos agora com o Pentium 4 x Athlon um cenário semelhante, porém com os lados invertidos: A Intel ataca com um processador que é potente em inteiros, mas fraco em ponto flutuante.
Ironicamente, a solução da Intel para tentar diminuir a deficiência do processador em ponto flutuante é a mesma que a AMD usou na época do K6-2. Lembra-se do 3D-Now, as instruções incorporadas ao K6-2, que melhoravam seu desempenho nos jogos otimizados? A Intel optou por seguir exatamente o mesmo caminho, incorporando 144 novas instruções ao Pentium 4, chamadas de SSE2 que visam melhorar seu desempenho os jogos e aplicativos gráficos.
SSE2
As “Double Precision Streaming SIMD Extensions” do Pentium 4 são 144 novas instruções de ponto flutuante de dupla precisão. Elas tem basicamente a mesma função das instruções SSE do Pentium III e do 3D-Now! Do Athlon: melhorar o desempenho do processador em aplicativos de ponto flutuante. A diferença é que as instruções do Pentium 4 são mais poderosas que os conjuntos anteriores e podem ser utilizadas em mais situações, o que pode literalmente salvar a pátria do Pentium 4 caso realmente um grande número de aplicativos sejam bem otimizados para as novas instruções. A grande dúvida é que assim como nos conjuntos anteriores, é necessário que os aplicativos sejam reescritos a fim de utilizar as novas instruções.
A AMD anunciou que sua próxima geração de processadores de 64 bits, composta pelos processadores Clawhammer e Sledgehammer também suportarão o SSE2, mas eles serão lançados apenas em 2002. Por enquanto o Pentium 4 ainda tem exclusividade. Vale lembrar que o Pentium 4 mantém compatibilidade com as instruções SSE do Pentium III, aproveitando a base de aplicativos otimizados que já existe.
Acesso à Memória
Apesar de terem a desvantagem de utilizar as caras memórias Rambus, o Pentium 4 estava (ou ainda está, já que o uso de memória Rambus ainda é uma opção) indiscutivelmente bem posicionado do ponto de vista do desempenho de acesso à memória. Acessando simultaneamente dois módulos RIMM temos um barramento de dados de 3.2 GB/s usado módulos PC-800, o que corresponde a três vezes o acesso permitido por módulos de memórias PC-133 comuns. Mesmo o Athlon usando memórias DDR fica para trás neste quesito
Por um lado isto ajuda bastante o processador em aplicativos dependentes da velocidade de acesso à memória, como programas de edição e compressão de vídeo e alguns jogos. Por outro causa no mínimo um certo desconforto no bolso, já que além de usar memória Rambus é preciso usar os módulos em pares. Se quiser 256 MB de memória, terá que usar obrigatoriamente dois módulos de 128 MB da mesma marca e velocidade. Não existe a possibilidade de usar módulos RIMM de velocidades diferentes ou números ímpares.
Instalação do Processador
Nas placas mãe soquete 423, onde o encaixe do processador é muito grande e o cooler bastante pesado, o cooler do processador é preso através de dois encaixes parafusados diretamente à chapa do gabinete, através de 4 orifícios na placa mãe.
hospedagem de sites" />
Orifícios na chapa da gabinete
O problema aqui é que nem todos os gabinete possuem os 4 furos necessários para instalar os suportes.
Estes suportes tornam-se necessários devido à monstruosidade que são os coolers para Pentium 4, o cooler original da Intel, que acompanha os processadores Boxed por exemplo pesa quase meio quilo!. Definitivamente vai ser o fim dos coolers de 10 reais made in Paraguai.
Uma novidade bem vinda é que o Pentium 4 trás de volta a chapinha metálica sobre o processador, o que acaba com os problemas de rachaduras no processador ao ser instalado o cooler, como vem acontecendo com alguns processadores Pentium III, Celeron, Duron e Athlon, em formato soquete, onde temos a parte inferior do waffer de silício onde é construído o processador (que é bastante frágil) diretamente exposta. Nos novos Pentium 4 com core Northwood, muda o formato do processador, mas a proteção de metal continua presente.
hospedagem de sites" />
Pentium 4 com core Willamette.
Juntamente com o Pentium 4, A Intel lançou também um novo padrão de fontes de alimentação, o ATX 2.03. O problema neste caso é que o Pentium 4 consome uma quantidade muito grande de eletricidade. O padrão consiste em fontes que comprovadamente podem suportar esta demanda, e como garantia futura, as novas fontes trazem um novo conector de 12 volts. Este conector é ligado diretamente a placa mãe visando aumentar o fornecimento elétrico para o processador.
hospedagem de sites" />
Novo conector da fonte
Desempenho
Como disse no início deste tópico, a maioria das inovações trazidas pelo Pentium 4 visam diminuir a queda de performance causada pelo uso do Pipeline de 20 estágios. Este é o grande problema do Pentium 4: apesar de estar disponível em versões de clocks altíssimos, o processador perde tanto para o Pentium III quanto para o Athlon em uma base clock por clock em praticamente todos os aplicativos.
É preciso um Pentium 4 de 1.4 GHz para conseguir superar o Pentium 3 de apenas 1 GHz por uma margem considerável, e mesmo assim, em alguns poucos aplicativos o Pentium 4, mesmo operando a uma freqüência 40% superior chega a ficar muito próximo do seu antecessor.
Comparado com um Athlon de 1.2 GHz, novos vexames: mesmo operando a uma freqüência 200 MHz superior, o Pentium 4 de 1.4 GHz, perde na maioria dos aplicativos. Na verdade, os únicos aplicativos atuais em que o Pentium 4 mostrou um desempenho convincente foi no Quake 3 (apenas no Quake 3, não em outros jogos) e na compressão de vídeo.
No futuro este cenário continuará se repetindo, pois devido à sua arquitetura, o Pentium só conseguirá superar os Athlons e Pentiums III (ou Celerons, que ainda continuarão sendo produzidos durante algum tempo) numa base clock por clock em aplicativos extremamente otimizados para o SSE2, ou em aplicativos que sejam muito dependentes da velocidade de acesso à memória, como os aplicativos de compressão de vídeo e jogos que manipulem uma quantidade muito grande de texturas, com o Quake 3, já que graças ao uso de dois canais de memória Rambus, o Pentium 4 é o campeão neste quesito.
Como disse, a arquitetura do Pentium foi claramente desenvolvida para operar a altas freqüências, e não necessariamente para competir com processadores do mesmo clock. Isto significa que o Pentium 4 sempre operará a freqüências superiores às dos concorrentes, mas não necessariamente os superará em desempenho. O pior é que a estratégia pode dar certo já que ainda hoje muita gente acredita que “quanto mais Megahertz, mais rápido”.
Para não ficar para trás, a AMD adotou um índice de desempenho apartir do Athlon XP, que compara o desempenho do processador ao alcançado pelo Pentium 4. Um Athlon XP 1800 por exemplo, opera a apenas 1.533 GHz, mas tem, segundo a AMD, um desempenho igual ou superior a um Pentium 4 de 1.8 GHz.
|