ct

    Pentium MMX


    Não existem muitas diferenças entre o Pentium 1 e o MMX. Como o nome já sugere, a principal modificação foram as instruções MMX, que segundo o marketing feito pela Intel na época, seriam suficientes para aumentar de forma considerável o desempenho do processador em aplicativos que envolvem multimídia.

    O problema é que as instruções MMX ajudam apenas em aplicativos otimizados. É necessário que o desenvolvedor altere o código do programa, substituindo as instruções x86 padrão por instruções MMX, recompile e redistribua o programa, um processo que exige muito trabalho e custa dinheiro. Mesmo os programas lançados depois do MMX, nem sempre são otimizados para as novas instruções.

    Para não depender apenas das novas instruções, a Intel aumentou o cache L1 do processador, de 16 para 32 KB. Com isto, o MMX passou a ser um pouco mais rápido do que um Pentium 1 da mesma frequência, mesmo nos aplicativos sem otimização. Lembre-se que naquela época o cache L2 do processador ainda fazia parte da placa mãe e operava a apenas 66 MHz. Um cache L1 competente era essencial.

    A Intel lançou também, modelos de processadores MMX Overdrive, que podem substituir antigos processadores Pentium de 75, 100 ou 120 MHz com a simples troca do processador. O problema é que estes processadores eram mais caros e difíceis de encontrar, assim como os overdrives anteriores. Novamente uma péssima opção de upgrade, já o overdrive chegava a custar mais caro que um MMX “normal” junto com uma nova placa mãe.

    Como funcionam as instruções MMX: O Pentium é um processador que trabalha com palavras binárias de 32 bits. O problema é que muitas vezes é preciso realizar cálculos utilizando dados de 8 ou 16 bits, que são utilizados principalmente por programas de edição de imagem ou som. Pela lógica, seria possível processar quatro palavras de 8 bits ou duas de 16 de cada vez, mas na prática, o processador é capaz de processar apenas um valor de cada de cada vez, independentemente do número de bits. A soma de dois números de 8 bits demora tanto quanto a soma de dois números de 32 bits, simplesmente os bits adicionais do processador não são utilizados.

    As instruções MMX, permitem juntar várias palavras binárias de 8 ou 16 bits e transformá-las em uma única palavra maior, que pode ser processada (da mesma maneira que seria processada separadamente utilizando as instruções padrão) usando instruções específicas do conjunto MMX.

    Para tornar mais fácil a tarefa de adaptar os programas para utilizar as instruções MMX, a Intel optou por adicioná-las ao processador na forma de uma extensão do coprocessador aritmético. Esta arquitetura traz a vantagem de não exigir praticamente nenhuma alteração no projeto do processador, pois seu funcionamento continua sendo idêntico, apenas sendo “remendado” com as novas instruções.

    Um programa antigo, simplesmente ignorará as instruções MMX, e acabará não apresentando nenhum ganho de performance. Para tirar proveito das novas instruções, é preciso que o programador altere o código do programa, alterando suas rotinas para que as instruções MMX sejam utilizadas no lugar das instruções x86 padrão. O ganho de performance real depende da habilidade do programador em detectar onde e como o MMX pode ser usado para tornar a execução do programa mais rápida.

    Um golpe de Marketing: Teoricamente, as instruções MMX podem tornar a execução de aplicativos gráficos até 400% mais rápida, já que até 4 palavras de 16 bits poderiam ser processadas de cada vez. Outros aplicativos também poderiam ser muito beneficiados. Na prática porém, os ganhos trazidos pelas instruções MMX são muito menores.

    Para começar, apenas algumas das rotinas utilizadas pelos programas podem ser otimizadas, já que a única vantagem trazida pelas instruções MMX é o processamento mais rápido de palavras de 8 ou 16 bits. A maioria das instruções continuam sendo executadas através das instruções x86 padrão. Na prática, apenas 30 ou 40% das instruções executadas pelos processadores de imagens poderiam ser executadas mais rápido, resultando em um ganho de performance em torno de 20 ou 30%.

    Trinta por cento de ganho real já não seria uma ganho tão ruim, porém, mais um pequeno problema com as instruções MMX tornam o ganho de desempenho ainda menor.

    Como o acesso às instruções MMX é feito através do mesmo barramento utilizado pelo coprocessador aritmético, não é possível acessar ao mesmo tempo ambos os dispositivos. Ou seja, o programa pode ou executar uma instrução MMX ou uma instrução de ponto flutuante, nunca fazer as duas coisas ao mesmo tempo.

    Para piorar um pouco mais a situação, um certo tempo é perdido para alternar entre o acesso às instruções MMX e o uso do coprocessador aritmético. Como os programas gráficos são muito dependentes do coprocessador aritmético, é preciso constantemente alternar entre as instruções MMX e as instruções de FPU (do coprocessador aritmético) fazendo com que o ganho de performance conseguido através do uso das instruções MMX seja em média de apenas 10 ou 12%.

    Vendo o pequeno ganho de desempenho que poderia ser conseguido através do MMX, poucas softwarehouses se interessaram em otimizar seus programas para as novas instruções. A adesão às instruções MMX foi tão pequena que mesmo hoje, vários anos depois do lançamento do MMX, praticamente pode-se contar nos dedos os programas realmente otimizados para as novas instruções, sendo que os programas otimizados rodam em média apenas 10% mais rápido.

    O MMX é muito mais um golpe de Marketing, do que realmente um melhoramento nos processadores. Apesar dos ganhos anêmicos de performance, as campanhas publicitárias da Intel foram tão fortes que obrigaram concorrentes como a AMD e a Cyrix a também adotar o MMX em seus processadores, pois caso contrário, simplesmente não conseguiriam vendê-los. Infelizmente, apesar do estardalhaço, as instruções MMX tornaram-se apenas um elefante branco da informática.


    » Próximo: AMD K6





    Você está lendo o livro Hardware, Manual Completo (publicado em 2002):

    Se se está em busca de um livro atualizado sobre Hardware, leia o Hardware, o Guia Definitivo, que oferece informações atualizadas:

    Autor: Carlos E. Morimoto
    Páginas: 848
    Formato: 23 x 16 cm
    Editora: GDH Press e Sul Editores
    ISBN: 978-85-99593-10-2
    Lançado em: Outubro de 2007

    » R$ 84,00 + frete
    (Preço nas livrarias: R$ 108)

    » Compre o seu

    Descrição:

    Para quem não lembra, nosso último livro de hardware foi lançado em 2000 e era um tijolão com quase 600 páginas. Este livro está atualmente disponível para leitura online, embora brutalmente desatualizado.

    O Hardware, o guia definitivo é um novo projeto, escrito a partir do zero, sem aproveitar trechos do livro anterior. Ele nasce como um livro de hardware atualizado, que dá um maior destaque para manutenção e problemas do dia-a-dia, além de oferecer uma sólida base teórica para que o leitor possa realmente entender e diferenciar toda a gama de tecnologias utilizadas nos PCs atuais.

    Veja também nossos livros Redes, Guia Prático, Servidores Linux, Guia Prático, Smartphones, Guia Prático e Linux, Guia Prático, nossos outros lançamentos.





cb
HOME