Processadores: Pentium III e a família Athlon

Clique aqui para ler a segunda parte

O Pentium III trouxe uma série de refinamentos sobre a arquitetura do Pentium II, que tornaram a plataforma mais elegante, melhoraram o desempenho em diversas áreas e, em resumo, permitiram que ela se popularizasse, com processadores e placas mais baratas, que permitiram que a Intel recuperasse parte do terreno perdido.

As versões iniciais do Pentium III competiram com os cansados K6-2 e K6-3, que passaram a perder espaço, vítimas dos cortes nos preços da Intel e do lançamento de versões mais competitivas do Celeron. Para piorar, muitos fabricantes (entre eles a infame PC-Chips) inundaram o mercado com placas super 7 de baixa qualidade, com todo o tipo de problemas. Isso acabou queimando a imagem da plataforma, fazendo com que muitos migrassem para a linha da Intel. A resposta da AMD veio com o lançamento do Athlon, sobre o qual falarei no próximo tópico.

A versão inicial do Pentium III foi lançada em fevereiro de fevereiro de 1999. Ela foi uma versão transitória, baseada no core Katmai (de 0.25 micron) que ainda utilizava o encapsulamento SEPP e o cache L2 externo operando à metade da frequência do processador. O clock também não era muito diferente, com o processador operando a 500 MHz (apenas 50 MHz mais rápido que a última versão do Pentium II).

A grande inovação foi a inclusão das instruções SSE, um conjunto de 70 novas instruções que foram originalmente apresentadas como um contrapeso às instruções 3D-Now da AMD, mas que eventualmente acabaram roubando a cena.

A idéia básica em torno do SSE (assim como no caso do 3D-Now) é o uso de instruções SIMD (Single Instruction, Multpliple Data) que permitem repetir uma mesma operação em um conjunto de 2 a 16 valores (até 16 inteiros de 8 bits, ou 4 números de ponto flutuante de 32 bits e dupla precisão, entre outras possibilidades) com todo o conjunto consumindo um único ciclo de processamento, em vez de um ciclo para cada um. Em resumo, o uso do SIMD permite que o programador diga “adicione 2 em A, B, C e D”, em vez de dizer “adicione 2 em A, adicione 2 em B, adicione 2 em C e adicione 2 em D”.

As instruções SIMD são úteis em diversas situações, como ao manipular vetores em uma imagem 3D (jogos e aplicativos de renderização), aplicar filtros de edição (editores de imagem), compactar ou descompactar arquivos ou converter arquivos de audio e vídeo e assim por diante.

Apesar do termo “conjunto de instruções” sugerir apenas o uso de otimizações de software, as instruções SSE representaram mudanças físicas dentro do processador, com a adição de uma nova unidade de execução e de novos registradores, que efetivamente permitem que o processador execute mais processamento por ciclo.

Na época do Pentium III existiam poucos aplicativos otimizados, mas o número foi crescendo ao longo dos anos e hoje em dia quase todos os jogos, aplicativos de conversão de áudio e vídeo, compactadores e descompactadores de arquivos e aplicativos de edição de imagem ou modelagem 3D (entre outros) oferecem algum nível de otimização para as instruções SSE, muitas vezes com ganhos consideráveis de desempenho. Os próprios compliadores são capazes de gerar código otimizado quando a flag é ativada dentro das opções de compilação.

Em vez de tentar manter um padrão concorrente, a AMD optou por incluir suporte às instruções SSE a partir do Athlon XP, o que ajudou na popularização do conjunto, evitando que os desenvolvedores precisassem escolher entre dois padrões concorrentes. Com o passar do tempo, mais e mais instruções foram adicionadas ao conjunto SSE, expandindo as funções disponíveis. Cada conjunto adiciona um grupo de novas instruções, mantendo as anteriores:

SSE (70 instruções): Pentium III, Athlon XP
SSE2 (144 instruções adicionais): Pentium 4, Athlon 64
SSE3 (13 instruções adicionais): Pentium 4 Prescott, Athlon 64 Venice
SSE4 (47 instruções adicionais): Core 2 Duo, Phenom

Os projetos dos processadores foram também sendo adaptados ao longo do tempo para incluir mais unidades de processamento e novos registradores, com o objetivo de aumentar o número de instruções processadas por ciclo. O Athlon 64, por exemplo, incluía duas unidades SSE, enquanto o Pentium 4 usava apenas uma. Veremos mais detalhes ao longo dos próximos tópicos.

Sobre o Autor

Redes Sociais:

Deixe seu comentário

X