Definição de Prescott

Por Carlos E. Morimoto. Há .

O Prescott representa a terceira geração do Pentium 4 (a primeira foi o Willamette e a segundo o Northwood), produzido a partir de 2004, utilizando uma técnica de fabricação de 0.09 micron. A mudança arquitetural mais significativa foi a adição de 11 novos estágios ao já longo pipeline do Northwood. Com isso, o Prescott atingiu a impressionante marca de 31 estágios de pipeline, um número sem precedentes entre os processadores x86.

Em um processador atual, o uso de um pipeline mais longo não é exatamente uma boa notícia, muito pelo contrário. Como vimos, aumentar o número de pipelines do processador permite que cada estágio execute um volume menor de processamento. Com isso, o processador passa a ser capaz de operar a freqüências mais altas, mas, em compensação, as instruções demoram um número maior de ciclos de clock para serem processadas (já que precisam percorrer todo o pipeline), o que aumenta brutalmente o tempo perdido em operações de tomada de decisão, onde o processador precisa aguardar o resultado de uma operação para poder processar a seguinte.

Se as alterações parassem por aí, o Prescott seria capaz de operar a freqüências 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, responsável por "prever" o resultado de operações de tomada de decisão e assim permitir que o processador adiante o processamento das instruções seguintes enquanto a instrução inicial é processada. O Prescott é especialmente dependente do desempenho do circuito de branch prediction, pois cada instrução precisa percorrer um longo caminho ao longo dos 31 estágios do pipeline. Sem ele, o projeto do Prescott seria inviável, pois o processador perderia muito tempo em operações de tomada de decisão.

Em um processador atual, o circuito de branch prediction é capaz de indicar o caminho correto em mais de 95% das operações. Tal precisão é possível, porque ele se baseia em um histórico de operações já realizadas. Sempre que é preciso "adivinhar" o caminho mais provável de uma operação, ele pesquisa pelo resultado de operações semelhantes anteriormente realizadas. A maioria dos programas realiza um grande número de operações repetitivas (sobretudo aplicativos pouco otimizados, ou escritos em linguagens de alto nível), o que permite que o circuito de branch prediction execute seu trabalho com grande precisão.

O grande problema é que, sempre que ele erra, o processador precisa descartar todo o trabalho adiantado e começar de novo a partir do ponto inicial. Neste caso, são perdidos não apenas os 31 ciclos que a instrução inicial demora para percorrer o pipeline, mas também os ciclos necessários para remover os dados anteriores e carregar os registradores com as novas instruções a processar.

Quanto mais longo é o pipeline, maior é a penalidade a cada erro, o que coloca o Pescott em uma situação complicada, já que as operações de tomada de decisão representam até 14% das operações realizadas por um aplicativo típico.

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 instruções, de forma que as unidades de execução possam processar o número máximo de instruções a cada ciclo) também foi melhorado, resultando em outro pequeno ganho.

Foram feitas ainda duas pequenas modificações nas unidades de execução, que resultaram em mais um pequeno ganho, muito embora o número de unidades não tenha sido alterado.

O primeiro e mais significativo, foi a adição de um circuito dedicado de multiplicação de números inteiros. Até o Northwood, todas as operações de multiplicação eram enviadas à FPU (o coprocessador aritmético), processadas separadamente e então devolvidas. Com o Prescott, as unidades de processamento de números inteiros ganharam a habilidade de processá-las diretamente, o que representa uma grande economia de tempo.

O Pentium 4 possui três unidades de execução de números inteiros. Duas delas são "double-pumped", ou seja, são capazes de processar duas instruções simples por ciclo de clock. Um conjunto específico de instruções, que incluem operações um pouco mais complexas, são enviados para a terceira unidade de execução, que trabalha à freqüência normal. No Prescott, uma das duas unidades "rápidas" ganhou um novo bloco, capaz de processar operações shift/rotate (usadas em várias situações), 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 também um novo bloco de instruções, o conjunto SSE3. Ele é composto por 13 novas instruções, que complementam os dois conjuntos anteriores, dando sua cota de contribuição em aplicativos otimizados.

Finalmente, temos as mudanças no cache. O bloco de dados do cache L1 foi aumentado de 8 para 16 KB e o bloco de instruções (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 latência, que aumentaram em aproximadamente 40%. Em outras palavras, o Prescott tem um cache L2 maior, porém mais lento, o que anula grande parte do benefício.

Veja também
Qual o game mais caro da PS Store no Brasil?
Qual o game mais caro da PS Store no Brasil?
Games
Produtos piratas importados da China serão barrados pela Receita Federal
Produtos piratas importados da China serão barrados pela Receita Federal
Notícias
Melissa: o vírus que enganou os viciados em pornô e infectou mais de 100 mil PCs em 1999
Melissa: o vírus que enganou os viciados em pornô e infectou mais de 100 mil PCs em 1999
Artigos
Apple retira WhatsApp, Threads, Telegram e Signal da App Store chinesa
Apple retira WhatsApp, Threads, Telegram e Signal da App Store chinesa
Mobile
Banco Central confirma novo vazamento de chaves Pix
Banco Central confirma novo vazamento de chaves Pix
Notícias
Motorola lança Moto G04s por R$ 747,15 a vista
Motorola lança Moto G04s por R$ 747,15 a vista
Mobile
true