Você está na página 1de 6

Prescott

O Prescott representou a terceira gerao do Pentium 4. Ele foi produzido a partir de 2004, utilizando uma tcnica de fabricao de 0.09 micron. Diferente do Northwood, que trouxe apenas melhorias no cache, o Prescott trouxe uma nova reviso da arquitetura, com a adio de 11 novos estgios ao j longo pipeline do Northwood. Com isso, o Prescott atingiu a impressionante marca de 31 estgios de pipeline, um nmero sem precedentes entre os processadores x86. Para efeito de comparao, o Athlon 64 utiliza um pipeline de apenas 12 estgios. Em um processador atual, o uso de um pipeline mais longo no exatamente uma boa notcia, muito pelo contrrio. Como vimos, aumentar o nmero de pipelines do processador permite que cada estgio execute um volume menor de processamento, permitindo que o processador seja capaz de operar a frequncias mais altas. Em compensao, as instrues demoram um nmero maior de ciclos de clock para serem processadas (j que precisam percorrer todo o pipeline), o que aumenta brutalmente o tempo perdido nos erros de branch prediction. Se as alteraes parassem por a, o Prescott seria capaz de operar a frequncias mais altas, mas em troca seria brutalmente mais lento que um Northwood do mesmo clock. Para evitar essa sombria perspectiva, a Intel realizou um conjunto de melhorias na arquitetura, de forma a anular, ou pelo menos reduzir a perda. A primeira melhoria foi feita no circuito de branch prediction, do qual o Prescott especialmente dependente. Em um processador atual, o circuito de branch prediction capaz de indicar o caminho correto em mais de 95% das operaes. Tal preciso possvel, porque ele se baseia em um histrico de operaes j realizadas. Sempre que preciso "adivinhar" o caminho mais provvel de uma operao, ele pesquisa pelo resultado de operaes semelhantes anteriormente realizadas. A maioria dos programas realiza um grande nmero de operaes repetitivas (sobretudo aplicativos pouco otimizados, ou escritos em linguagens de alto nvel), o que permite que o circuito de branch prediction execute seu trabalho com grande preciso. O grande problema que sempre que ele erra, o processador precisa descartar todo o trabalho adiantado e comear de novo a partir do ponto inicial. Neste caso, so perdidos no apenas os 31 ciclos que a instruo inicial demora para percorrer o pipeline, mas tambm os ciclos necessrios para remover os dados anteriores e carregar os registradores com as novas instrues a processar. Quanto mais longo o pipeline, maior a penalidade a cada erro, o que coloca o Prescott em uma situao complicada, j que as operaes de tomada de deciso representam at 14% das operaes realizadas por um aplicativo tpico. Para reduzir a perda, o circuito de branch prediction do Prescott foi sensivelmente aprimorado, e passou a ser capaz de trabalhar com um ndice de acerto maior que o do Northwood. O scheduler (o circuito que ordena as instrues, de forma que as unidades de execuo possam processar o nmero mximo de instrues a cada ciclo) tambm foi melhorado, resultando em outro pequeno ganho. Foram feitas ainda duas pequenas modificaes nas unidades de execuo, que resultaram em mais um pequeno ganho, muito embora o nmero de unidades no tenha sido alterado. O primeiro e mais significativo foi a adio de um circuito dedicado de multiplicao de nmeros inteiros. At o Northwood, todas as operaes de multiplicao eram enviadas FPU, processadas

separadamente e ento devolvidas. Com o Prescott, as unidades de processamento de nmeros inteiros ganharam a habilidade de process-las diretamente, o que representou uma grande economia de tempo. Como vimos, o Pentium 4 possui trs unidades de execuo de nmeros inteiros. Duas delas so "double-pumped", ou seja, so capazes de processar duas instrues simples por ciclo de clock. Um conjunto especfico de instrues, que incluem operaes complexas, so enviados para a terceira unidade de execuo, que trabalha na frequncia normal. No Prescott, uma das duas unidades "rpidas" ganhou um novo bloco, capaz de processar operaes shift/rotate (usadas em vrias situaes), que antes precisavam ser processadas na unidade mais lenta. Com isso, a terceira unidade foi desafogada, resultando em mais um pequeno ganho. O Prescott ganhou tambm um novo bloco de instrues, o conjunto SSE3, composto por 13 novas instrues. Embora no tenha sido uma expanso to radical quanto o SSE2, o SSE3 trouxe alguns complementos importantes, capazes de melhorar o desempenho consideravelmente em algumas situaes. Como de praxe, o SSE3 foi mais tarde incorporado tambm aos processadores AMD, a partir do Athlon 64 com core Venice. Continuando, as mudanas nas unidades de execuo foram acompanhadas tambm por mudanas no cache. O bloco de dados do cache L1 foi ampliado de 8 para 16 KB e o bloco de instrues (o trace-cache) recebeu pequenas melhorias, embora a capacidade tenha permanecido a mesma. O cache L2 dobrou de tamanho, saltando de 512 KB para 1 MB, mas o aumento teve como efeito colateral o aumento dos tempos de latncia, que cresceram em aproximadamente 40%. Em outras palavras, o Prescott trouxe um cache L2 maior, porm mais lento, o que anulou grande parte do benefcio. Com relao fabricao, o Prescott foi o primeiro processador Intel a ser produzido utilizando a tcnica Strained Silicon, que passou a ser usada nos processadores Intel lanados da em diante. Ela consiste em "esticar" a superfcie do wafer de silcio, colocando-o sobre um substrato especialmente desenvolvido. Aumentando a distncia entre os tomos do wafer, reduzida a resistncia passagem dos impulsos eltricos. Essa tcnica no tem nenhum efeito direto sobre o desempenho, mas ajuda a reduzir o consumo e a dissipao trmica do processador, alm de (pelo menos em teoria) permitir que ele seja capaz de operar a frequncias mais altas:

Slide demonstrando a tcnica Strained Silicon De uma forma geral, o Pentium 4 baseado no core Prescott era um pouco mais lento que um Northwood do mesmo clock, muito embora ele ganhasse por uma pequena margem em alguns aplicativos otimizados (graas ao aumento no tamanho do cache e s novas instrues SSE). Isso no foi surpresa, j que os aperfeioamentos feitos no Prescott tiveram como principal objetivo anular a perda de performance causada pelo aumento no nmero de estgios do pipeline e no realmente melhorar o desempenho por ciclo de clock. Na poca, o plano era melhorar o desempenho do processador com sucessivos aumentos na frequncia de clock e no com base no aumento da eficincia. O projeto de um novo processador demora de 3 a 5 anos para ser desenvolvido, at o ponto em que est testado e pronto para entrar em produo. Mesmo em casos onde um projeto j existente modificado, como no caso do Prescott, o desenvolvimento no toma menos do que 2 anos. Ou seja, preciso planejar quais modificaes realizar com uma antecedncia muito grande e qualquer erro estratgico (como o uso das memrias Rambus) acaba demorando muitos anos para ser consertado. Como o Prescott foi lanado no incio de 2004, podemos imaginar que a Intel comeou a desenvolv-lo pouco depois do lanamento do Pentium 4 Willamette, colocando em prtica as ideias que vigoravam na poca. J que o desempenho por ciclo de clock era similar ou inferior, as vantagens de possuir um Prescott em vez de um Northwood recaiam apenas sobre a maior margem de overclock. Para quem no pretendia fazer overclock, no era vantagem utilizar um Prescott em relao a um Northwood do mesmo clock. Devido ao aumento no nmero de estgios do pipeline e das melhorias feitas nas unidades de execuo, o Prescott dissipa mais calor que um Northwood do mesmo clock, mesmo sendo produzido em uma tcnica de 0.09 micron. Se isso lhe soa estranho, basta ter em mente que apesar da tcnica mais avanada de produo, ele possui 125 milhes de transistores, contra apenas 55 milhes do Northwood. O TDP do Northwood de 3.4 GHz de 89 watts, enquanto o do Prescott da mesma frequncia de 103 watts, ou seja, 14 watts a mais. Um consumo to alto fazia com que o Prescott no funcionasse em conjunto com muitas fontes genricas, o que ajudou a trazer tona a questo da qualidade das fontes e da capacidade real de fornecimento. Na poca, a Intel recomendava o uso de fontes de pelo menos 400 watts reais, capazes de fornecer um mnimo de 16 Amperes na sada de 12V. Outro aspecto importante era a refrigerao: alm de um cooler bem dimensionado, era recomendvel usar um exaustor adicional, instalado na abertura lateral (soprando ar frio sobre o processador). Sem uma ventilao adequada, os Pentium 4 baseados no Prescott ultrapassavam facilmente o limite de temperatura, fazendo com que o Thermal Throttling entrasse em ao, reduzindo a frequncia do processador. Para evitar confuso, os modelos baseados no core Prescott que operam mesma frequncia dos Northwood receberam a letra "E", como em: Pentium Pentium 4 4 3.40E 3.20E

Pentium Pentium 4 2.80E

3.00E

Todos estes modelos utilizam bus de 800 MHz, o que quebrou a compatibilidade com placas antigas, que suportavam apenas os 400 e 533 MHz. No caso das placas com chipset Intel, o suporte foi introduzido a partir da srie i865; no caso dos chipsets da SiS a partir da srie FX (SiS648FX, SiS655FX e SiS661FX); e, no caso dos da VIA, a partir do PT800. A primeira safra de placas (produzidas na primeira metade de 2004) precisavam de upgrades de BIOS para reconhecer corretamente o processador. A Intel planejava lanar verses do Prescott com clocks acima de 4 GHz (durante a fase de desenvolvimento chegaram a falar em 5 GHz), mas o massivo consumo eltrico e a dissipao trmica do processador tornou invivel o lanamento de verses com clock acima de 3.8 GHz (ou seja, apenas 400 MHz a mais que os Pentium 4 baseados no Northwood de 0.13 micron). No final, o aumento no nmero de estgios do pipeline e as outras mudanas arquiteturais feitas no processador acabaram sendo em vo, tornando o Prescott um dos maiores fracassos da histria da Intel.

Prescott

Por Carlos E. Morimoto em 26 de junho de 2005 s 22h03

0 O Prescott representa a terceira gerao do Pentium 4 (a primeira foi o Willamette e a segundo o Northwood), produzido a partir de 2004, utilizando uma tcnica de fabricao de 0.09 micron. A mudana arquitetural mais significativa foi a adio de 11 novos estgios ao j longo pipeline do Northwood. Com isso, o Prescott atingiu a impressionante marca de 31 estgios de pipeline, um nmero sem precedentes entre os processadores x86. Em um processador atual, o uso de um pipeline mais longo no exatamente uma boa notcia, muito pelo contrrio. Como vimos, aumentar o nmero de pipelines do processador permite que cada estgio execute um volume menor de processamento. Com isso, o processador passa a ser capaz de operar a freqncias mais altas, mas, em compensao, as instrues demoram um nmero maior de ciclos de clock para serem processadas (j que precisam percorrer todo o pipeline), o que aumenta brutalmente o tempo perdido em operaes de tomada de deciso, onde o processador precisa aguardar o resultado de uma operao para poder processar a seguinte. Se as alteraes parassem por a, o Prescott seria capaz de operar a freqncias mais elevadas, mas em troca seria brutalmente mais lento que um Northwood do mesmo clock. Para evitar essa sombria perspectiva, a Intel realizou um conjunto de melhorias na arquitetura, de forma a anular, ou pelo menos reduzir a perda. A primeira melhoria foi feita no circuito de branch prediction, responsvel por "prever" o resultado de operaes de tomada de deciso e assim permitir que o processador adiante o processamento das instrues seguintes enquanto a instruo inicial processada. O Prescott especialmente dependente do desempenho do circuito de branch prediction, pois cada instruo precisa percorrer um longo caminho ao longo dos 31 estgios do pipeline. Sem ele, o projeto do Prescott seria invivel, pois o processador perderia muito tempo em operaes de tomada de deciso.

Em um processador atual, o circuito de branch prediction capaz de indicar o caminho correto em mais de 95% das operaes. Tal preciso possvel, porque ele se baseia em um histrico de operaes j realizadas. Sempre que preciso "adivinhar" o caminho mais provvel de uma operao, ele pesquisa pelo resultado de operaes semelhantes anteriormente realizadas. A maioria dos programas realiza um grande nmero de operaes repetitivas (sobretudo aplicativos pouco otimizados, ou escritos em linguagens de alto nvel), o que permite que o circuito de branch prediction execute seu trabalho com grande preciso. O grande problema que, sempre que ele erra, o processador precisa descartar todo o trabalho adiantado e comear de novo a partir do ponto inicial. Neste caso, so perdidos no apenas os 31 ciclos que a instruo inicial demora para percorrer o pipeline, mas tambm os ciclos necessrios para remover os dados anteriores e carregar os registradores com as novas instrues a processar. Quanto mais longo o pipeline, maior a penalidade a cada erro, o que coloca o Pescott em uma situao complicada, j que as operaes de tomada de deciso representam at 14% das operaes realizadas por um aplicativo tpico. Para reduzir a perda, o circuito de branch prediction do Prescott foi sensivelmente aprimorado, e passou a ser capaz de trabalhar com um ndice de acerto maior que o do Northwood. O scheduler (o circuito que ordena as instrues, de forma que as unidades de execuo possam processar o nmero mximo de instrues a cada ciclo) tambm foi melhorado, resultando em outro pequeno ganho. Foram feitas ainda duas pequenas modificaes nas unidades de execuo, que resultaram em mais um pequeno ganho, muito embora o nmero de unidades no tenha sido alterado. O primeiro e mais significativo, foi a adio de um circuito dedicado de multiplicao de nmeros inteiros. At o Northwood, todas as operaes de multiplicao eram enviadas FPU (o coprocessador aritmtico), processadas separadamente e ento devolvidas. Com o Prescott, as unidades de processamento de nmeros inteiros ganharam a habilidade de process-las diretamente, o que representa uma grande economia de tempo. O Pentium 4 possui trs unidades de execuo de nmeros inteiros. Duas delas so "doublepumped", ou seja, so capazes de processar duas instrues simples por ciclo de clock. Um conjunto especfico de instrues, que incluem operaes um pouco mais complexas, so enviados para a terceira unidade de execuo, que trabalha freqncia normal. No Prescott, uma das duas unidades "rpidas" ganhou um novo bloco, capaz de processar operaes shift/rotate (usadas em vrias situaes), que antes precisavam ser processadas na unidade mais lenta. Com isso, a terceira unidade foi desafogada, resultando em mais um pequeno ganho. O Prescott ganhou tambm um novo bloco de instrues, o conjunto SSE3. Ele composto por 13 novas instrues, que complementam os dois conjuntos anteriores, dando sua cota de contribuio em aplicativos otimizados. Finalmente, temos as mudanas no cache. O bloco de dados do cache L1 foi aumentado de 8 para 16 KB e o bloco de instrues (o trace-cache) recebeu pequenas melhorias, embora a capacidade tenha permanecido a mesma. O cache L2 dobrou de tamanho, saltando de 512 KB para 1 MB, mas o aumento teve como efeito colateral o aumento dos tempos de latncia, que aumentaram em aproximadamente 40%. Em outras palavras, o Prescott tem um cache L2 maior, porm mais lento, o que anula grande parte do benefcio.

Você também pode gostar