Mais Populares

22 de abril de 2011

Processador i3 (de notebook) mais lento que Celeron 356 (de desktop)

Ao comprar meu novo computador, optei por um notebook, afinal na faculdade eles desativaram o laboratório de informática e agora só os alunos contam com seus próprios equipamentos para poder estudar, e meio desesperado na compra, optei por um que tinha o processador Core i3. O modelo é o Lenovo Z460, que pensei que poderia substituir meu desktop, entretanto isto não será possível ainda.

Eu já tive vários computadores desktop, assim também como vários notebooks e netbooks, e entre eles, um HP foi a minha melhor decisão, na época era um processador Sempron, mas que trabalhava como um ninja (e digamos melhor que o Core i3, apesar de ser single core).


O Core i3 por sinal, é um processador que realmente mostra ser muito robusto, sua plataforma é nova e desafiadora. Integrando muitos componentes dentro de um único encapsulamento e fornecendo capacidade de controle de memória e de até da placa de vídeo, o Core i3 seria o melhor custo-benefício para os fabricantes, já que dispensaria o uso de um chipset arrojado em uma placa-mãe para fazê-lo funcionar.

Apesar do Core i3 possuir 2 núcleos e possuir a tecnologia HT, ele tem um sério agravo nesta linha da Lenovo.

Já pensou em ver o plug-in do flash travar ao ver um vídeo em tela cheia? Conhece o jogo Citiville no facebook? Sabe aquele joguinho em 3D da época do Windows 98 que roda em qualquer PC atual sem delay algum? Estas são coisas que este novo processador é incapaz de fazer.

Irritado com a porção de multimídia que foi pro espaço, testei então mais a fundo a questão do processamento, passando a criar um programa em linguagem C, contendo a somatória e divisão utilizando números de ponto flutuante. Rodei então no notebook e no computador desktop.

Claro que o desktop, por ser desktop, pode ser até injusto desafiar com o processamento do Core i3, mas estamos falando de uma nova arquitetura que promete ser mais rápida, e o desktop que foi utilizado foram 2: Celeron 356 com 3,33 Ghz de velocidade, 512 Kb de cache e 2 Gb de RAM. O outro desktop, foi um Pentium Dual Core de 2,2 Ghz modelo E2200 (primeiros da série antes de surgirem processadores Core 2 Duo) com 3 Gb de memória RAM.

O teste foi constituído de rodar um programa com o loop de 1 milhão de contas, e para nossa surpresa, o programa rodou muito mais rápido nos desktops, utilizando a carga total de 100% do processador no Celeron, e carga de 50% no Pentium Dual Core. (Isto deve-se ao fato da limitação da linguagem C trabalhar em apenas 1 núcleo, afinal não havia tratamento para multi-core na época).

Para entender melhor como funciona o sistema de utilização de processador, um núcleo do processador é responsável em rodar a aplicação em linguagem de programação apropriada. A Linguagem C por não ser orientada à objeto, ser uma linguagem digamos que "sequencial", ela deve seguir os passos um à um até chegar no resultado final. Para conseguir utilizar os outros núcleos, basta abrir um programa para cada núcleo, e automaticamente o sistema fará o endereçamento deste software para o próximo núcleo, e isto é feito de forma automática e totalmente transparente para o usuário desde a linha Pentium Dual Core.

Para ser mais exato, para utilizar por exemplo, 100% de um quad-core utilizando linguagem C, você deve dividir seu programa em no mínimo 4 processos independentes, que trabalham por si só, que podem ser chamados via shell também de formas independentes. Apenas neste caso é possível utilizar todo o potencial do processador.

Basta 2 programas em linguagem C para tomar conta do Pentium Dual-Core do desktop para funcionar à 100%.

Porém, isto não acontece na nova linha de processadores da Intel.

O Core i3 se comportou como nenhum processador da arquitetura se comportou. O programa rodou extremamente lento, e a grande diferença foi na utilização do processador, que não passou de 3% para cada processo.

Foi possível executar mais de 60 processos com loops finitos que praticamente ficavam rodando sem acabar (tive que fechar na mão os programas, não chegavam ao fim).

Ao contrário do desktop, aonde o processamento chega tranquilamente aos 100% com alguns processos, no Core i3 a coisa é bem diferente. É necessário muitos processos para conseguir uma carga de meros 30% do processador. Aparentemente, isto sugere que as threads são reutilizadas pelos outros programas, diminuindo a carga total de processamento do sistema, porém os programas rodam extremamente mais lentos.

Isto por um lado é bom, e por outro é péssimo. Seria possível talvez utilizar toda a carga do sistema com milhões de processos rodando em paralelo, ou com um sistema orientado à objeto que cria inúmeras instâncias para processamento.

É um sistema digamos relativamente bom para processamento paralelo entre vários programas, isto seria muito útil em servidores, não em computadores domésticos, além disto, aparentemente durante a execução de 60 programas do teste, o processador chegou a ter um mínimo de 5% de utilização, ou seja, praticamente nem é utilizado para sua tarefa em si.

Sugiro que tenha um limitador no processador, aonde limita o processamento de cada processo, procurando por threads na cache que já foram processadas, antes de passar pelo processador ou por algum núcleo de forma efetiva.

Isto torna o processamento de cada programa muito mais lento, a tal ponto que um jogo da plataforma Windows 98, que roda normal em ambos os desktops, praticamente não rodar no Core i3, além da deficiência na placa de vídeo.

A aceleração de vídeo deve ser obrigatoriamente habilitada para conseguir jogar o jogo, ou então você verá uma tela cheia de pontos rosas e com a coloração do jogo totalmente distorcida.

Agora temos um grande dilema: O plug-in do flash, funciona apenas no primeiro núcleo, ou seja, a Adobe não criou um flash apropriado para a programação paralela, ou seja, daqui pra frente, ou veremos a Adobe trabalhar firme em criar um novo sistema para utilizar estes recursos da programação paralela, ou veremos muitas pessoas reclamando do flash e ignorando-o totalmente, evitando de instalar em suas máquinas.

Aproveitando o caso do flash, o Youtube, o portal de vídeos do Google já prepara uma versão em breve do site utilizando o HTML5, ou seja, não iremos mais precisar do plug-in do flash para ver-mos nossos vídeos tão favoritos. Além disto, o Google pretende criar um formato de vídeo exclusivo para o Google Chrome, tornando-o mais difícil seu download e sua utilização dos vídeos por terceiros, porém por se tratar de padrões abertos, tenho certeza que em breve seremos capazes de utilizar os novos vídeos codificados assim como aconteceu com o formato FLV logo no seu início.

Apesar do assunto do Google, temos em mente que temos uma vasta gama de opções pela frente, que esta nova plataforma é robusta em programação paralela, mas totalmente ineficaz para a multimídia que o usuário de computador precisa dia após dia.

Por: Aristóteles Machado.

Um comentário :

  1. amigo, voce disse tudo, eu tinha um desktop com sempron 3000+ 1.8ghz e 2gb de memoria, sinceramente, da um coro no meu notebook CCE note 6500, com processador core i3,4gb de ram... minha namorada gosta de jogar pet mania, e nao consegue jogar no meu notebook porque simplesmente fica um lag danado.
    realmente eu me arrependo de ter trocado meu desktop pelo notebook.

    ResponderExcluir

Deixe seu comentário abaixo e curta Tutorial TI no facebook!